代码改变世界

第3次作业+105032014166

2017-03-30 20:28  张珍珍  阅读(134)  评论(0编辑  收藏  举报

测试链接:http://www.cnblogs.com/zbxun/p/6628545.html

1、修正流程图:

 

2、测试用例设计:

本测试中语句覆盖、判定覆盖、路径覆盖重复

 

 

 

 

3、单元测试框架:

 

 1 import static org.junit.Assert.*;
 2 
 3 import org.junit.BeforeClass;
 4 import org.junit.Test;
 5 
 6 public class test1Test {
 7 
 8     @BeforeClass
 9     public static void setUpBeforeClass() throws Exception {
10     }
11 
12     @Test
13     public final void testTriangle() {
14         //fail("Not yet implemented"); // TODO
15         assertEquals("边的值不在范围内!",test1.triangle(99,98,101));
16         assertEquals("不构成三角形",test1.triangle(3,4,7));
17         assertEquals("一般三角形",test1.triangle(3,4,6));
18         assertEquals("直角三角形",test1.triangle(3,4,5));
19         assertEquals("等腰三角形",test1.triangle(3,3,2));
20         assertEquals("等边三角形",test1.triangle(3,3,3));
21         assertEquals("等边三角形",test1.triangle(4,4,4));
22         assertEquals("直角三角形",test1.triangle(5,12,13));
23         assertEquals("边的值不在范围内!",test1.triangle(101,201,310));
24         assertEquals("不构成三角形",test1.triangle(3,1,2));
25         assertEquals("不构成三角形",test1.triangle(1,3,2));
26         assertEquals("等腰三角形",test1.triangle(5,4,4));
27         assertEquals("边的值不在范围内!",test1.triangle(99,101,101));                                
28     }
29 
30 }

 

3、测试结果:

 

 

4、测试小结:

 (1) 测试用例编写的心得体会:

    这些覆盖方式测试比盲目测试要系统的多,不容易有遗漏,但同时有些覆盖方式人工测试是很耗费时间,甚至是不可能测得完,大概是需要利用工具自动化测试完。

(2)采用单元测试框架,和用main()方法调用的心得体会:  

    采用单元测试框架可以一次性测试所有数据,而main方法需要一一测试。而且单元测试可以分方法一一测试,若出现错误容易查找是哪个方法出现错误。

(3)调试与测试的不同体会:

    1)目地不同:调试是为了证明无错误,测试是为了证明有错误;2)顺序:调试一般都是在程序员开发过程中调试,并可找出错误及时修正,而测试是在后期才进行,找出错误后交给开发人员修正;3)调试更加针对代码,测试更加注重需求;