必做一:
针对附录1给出的三角形判断Java 代码,应用等价类划分法设计测试用例,用表格形式列出设计的测试用例:
测试用例如下:(红色字体为错误预言)
序号 | 测试输入:三条边 |
测试预言:【Oracle:Illegal(非三角形),Scalene(一般三角形), Isoceles(等腰三角形),Regular(等边三角形)】 |
1 | (5,5,5) | Regular |
2 | (-5,-5,-5) | Regular |
3 | (1,4,5) | Illegal |
4 | (2,3,5) | Illegal |
5 | (3,4,5) | Scalene |
6 | (4,5,8) | Scalene |
7 | (4,4,8) | Isoceles |
8 | (4,4,9) | Isoceles |
必做2:模仿附录2给出的三角形判断Junit测试代码,设计单元测试脚本,测试 必做一设计得到的测试用例。注意测试脚本中测试用例出现顺序
与[必做一表格所列顺序一致。运行所得的测试脚本,截运行结果图,写到博客中,同时将源代码push到你自己的github
根据测试用例,测试部分代码如下:
@Test public void testTriangle1() { Triangle t = new Triangle(5,5,5); assertFalse(t.isTriangle(t)); } @Test public void testIsTriangle2(){ // according to the mutant, this test case should fail Triangle t = new Triangle(-5,-5,-5); assertFalse(t.isTriangle(t)); } @Test public void testIsTriangle3(){ // according to the mutant, this test case should fail Triangle t = new Triangle(1,4,5); assertFalse(t.isTriangle(t)); } @Test public void testIsTriangle4(){ // according to the mutant, this test case should fail Triangle t = new Triangle(2,3,5); assertFalse(t.isTriangle(t)); }
测试结果如下:
必做三: 心得体会,写下本次练习你收获的知识点(PS:测试用例设计方法和步骤;测试脚本设计步骤或主要内容)
在设计测试用例,等价划分可以分为四类:非三角形,一般三角形,等腰三角形和等边三角形。在设计测试数据时,
要注意一些特殊数据的测试,我使用了(-5,-5,-5)等。由于上课就没有搞明白,对java的使用能力也有限,结果
在测试环节费了很大的力,好在之前结对编程时我的搭档对这个还略有研究,请教了别人只后终于能够搞清楚这里的关键
这里我使用的是Junit 4。在测试之前要注明@test,其实在导入test时会有但是不能删掉它,我觉得这次最大的收获就是
懂得使用Junit来进行一般的测试,在eclipse中使用Junit4进行单元测试,也明白了一个程序不是能运行就是完成了而是要
经过各种测试才是一个完整正确的代码。
完整代码上传至github:https://github.com/superyy