使用序例 | ||
序号 | 测试输入(三条边)(a,b,c) | 测试预期 |
1 | 2,1,2 | 等腰三角形 |
2 | 4,5,8 | 不是等边三角形 |
3 | 2,2,2 | 等边三角形 |
4 | 1,1,2 | 不是三角形 |
5 | 3,4,5 | 直角三角形 |
由附录1给出的判断三角形的代码开始写下面的测试类,上方的测试序例第一个的测试预期为等腰三角形,则可以知道他的判断条件为是否上方的判断返回值为Isoceles。下面2个测试序例以此写,部分代码如下:
@Test public void testIsTriangle1(){ Triangle t = new Triangle(2,1,2); assertEquals(t.getType(t),"Isoceles"); } @Test public void testIsTriangle2(){ Triangle t = new Triangle(5,4,8); assertEquals(t.getType(t),"Scalene"); } @Test public void testIsTriangle3(){ Triangle t = new Triangle(2,2,2); assertEquals(t.getType(t),"Regular"); } @Test public void testIsTriangle4(){ Triangle t = new Triangle(1,1,2); assertEquals(t.getType(t),"Illegal"); } @Test public void testIsTriangle5(){ Triangle t = new Triangle(3,4,5); assertEquals(t.getType(t),"zhijiao"); }
此外在附录一的代码中有加入了直角三角形的判断:
if((((triangle.lborderA*triangle.lborderA)+(triangle.lborderB*triangle.lborderB))==(triangle.lborderC*triangle.lborderC)) ||(((triangle.lborderA*triangle.lborderA)+(triangle.lborderC*triangle.lborderC))==(triangle.lborderB*triangle.lborderB)) ||((triangle.lborderA*triangle.lborderA)==((triangle.lborderB*triangle.lborderB)+(triangle.lborderC*triangle.lborderC)))) strType="zhijiao";
然后运行结果图如下:
左边的勾的代表与我的预期是一样的。
本次单元测试,了解到了junit的用法,对使junit测试类有了初步的使用。
本次测试中,首先先看附录 2中判断是否为三角形,开始模仿将测试类的条件改一下就完成了。判断条件返回的是字符串的类型所以判断条件作出相应的改动。
本次测试题目不难,只是让我对junit的测试类有了初步的了解。