1、修正流程图:根据新修改的代码,再次修正流程图

 

2、测试用例设计:依据所有的覆盖理论,分别写出相应的测试用例设计。

覆盖方式

用例

输入

期待结果

实际结果

是否通过

时间

判定覆盖

1

150,150,200

边的值不在范围内

等腰三角形

否

2017.3.30

判定覆盖

2

2,3,6

不能够组成三角形

不能够组成三角形

是

2017.3.30

语句覆盖

3

3,4,6

一般三角形

一般三角形

是

2017.3.30

语句覆盖

4

3,3,4

等腰三角形

等腰三角形

是

2017.3.30

语句覆盖

5

3,3,3,

等边三角形

等边三角形

是

2017.3.30

语句覆盖

6

3,4,5

直角三角形

直角三角形

是

2017.3.30

判定覆盖

7

a,3,4

请输入整数

请输入整数

是

2017.3.30

判定覆盖

8

-1,-3,2

边的值不在范围内

请输入整数

否

2017.3.30

条件覆盖

9

100,100,100

等边三角形

等边三角形

是

2017.3.30

条件覆盖

10

1,2,1

不能够组成三角形

不能够组成三角形

是

2017.3.30

条件覆盖

11

1,1,2

不能够组成三角形

不能够组成三角形

是

2017.3.30

条件覆盖

12

2,2,1

等腰三角形

等腰三角形

是

2017.3.30

判定/条件覆盖

13

4,5,6

一般三角形

一般三角形

是

2017.3.30

判定/条件覆盖

14

4,4,6

等腰三角形

等腰三角形

是

2017.3.30

判定/条件覆盖

15

101,101,101

边的值不在范围内

等边三角形

否

2017.3.30

判定/条件覆盖

16

0,0,0

边的值不在范围内

不能够组成三角形

否

2017.3.30

路径覆盖

17

6,6,6

等边三角形

等边三角形

是

2017.3.30

路径覆盖

18

5,5,8

等腰三角形

等腰三角形

是

2017.3.30

路径覆盖

19

6,8,10

直角三角形

直角三角形

是

2017.3.30

路径覆盖

20

7,8,9

一般三角形

一般三角形

是

2017.3.30

3、单元测试框架:采用单元测试框架Junit,初步简单的自动化执行测试用例。


import static org.junit.Assert.*;


import java.util.Scanner;


import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;



public class testTriangle{
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}


@AfterClass
public static void tearDownAfterClass() throws Exception {
}


@Test
public void triangle03() {
String s=null;
s=triangle03.trangle(101, 101, 101);
Assert.assertEquals("边的值不在范围内!", s);//1
s=triangle03.trangle(6, 6, 6);
Assert.assertEquals("可以组成等边三角形", s);//2
s=triangle03.trangle(3, 4, 5);
Assert.assertEquals("可以组成直角三角形", s);//3
s=triangle03.trangle(3, 3, 4);
Assert.assertEquals("可以组成等腰三角形", s);//4
s=triangle03.trangle(7, 8, 9);
Assert.assertEquals("可以组成普通三角形", s);//5
s=triangle03.trangle(1, 2, 1);
Assert.assertEquals("不能够组成三角形!", s);//6


}

}

 

3、测试结果:根据测试用例设计,执行测试,并给出TestRunner测试结果图。

 

4、测试小结:

  •      测试用例编写的心得体会。
  •      采用单元测试框架,和用main()方法调用的心得体会。
  •      调试与测试的不同体会。

(1)在编写测试用例的时候让我更加了解各种覆盖方式的区别,掌握了基本的覆盖理论,能够写出各种覆盖用例。在编写用例是要充分考虑各种情况,以覆盖更多条件和路径。

(2)单元测试能同时测试多个用例,更具效率性, 且不必输入数据。

(3) 测试的目的是发现错误,至于找出错误的原因和错误发生的地方不是软件测试的任务,而是调试的任务.调试的目的是为了证明程序的正确,因此它必须不断地排除错误,它们的出发点不一样。前者是挑错,是一种挑剔过程,属于质盘保证活动。后者是排错,是一种排除过程,是编码活动的一部分。

posted on 2017-03-30 21:03  001_陈定国  阅读(183)  评论(0)    收藏  举报