第3次作业+105032014116

Posted Trotteur

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第3次作业+105032014116相关的知识,希望对你有一定的参考价值。

1.测试对象

http://www.cnblogs.com/ZQ4162/p/6623033.html

2、修正流程图

 

3、测试用例设计

1)语句覆盖

用例号

测试用例

覆盖路径

预期结果

实际结果

测试结论

1

-1,-1,-1

ab

输入有误,请重新输入!

输入有误,请重新输入!

通过

 2

20,20,20

aceg

252

252

通过

2)判定覆盖

判断1Headphone>=0&&Shell>=0&&Protector>=0

判断2All<=1000

判断3All<=1800

用例号

测试用例

判断1

判断2

判断3

覆盖路径

预期结果

实际结果

测试结论

1

-1,-1,-1

F

F

F

ab

输入有误,请重新输入!

输入有误,请重新输入!

通过

2

20,20,20

T

T

T

aceg

252

252

通过

3)条件覆盖

判断1Headphone>=0&&Shell>=0&&Protector>=0

判断2All<=1000

判断3All<=1800

因为判断23均为单条件相同

用例号

测试用例

H>=0

S>=0

P>=0

All<=1000

All<=1800

All>1800

预期结果

实际结果

测试结论

1

1-1-1

T

F

F

F

F

F

输入有误,请重新输入!

输入有误,请重新输入!

通过

2

-111

F

T

T

F

F

F

输入有误,请重新输入!

输入有误,请重新输入!

通过

3

10,10,10

 

T

T

T

T

F

F

98

98

通过

4

20,10,10

T

T

T

T

T

F

217

217

通过

5

20,20,20

T

T

T

T

T

T

252

252

通过

(4)条件判定覆盖

用例号

测试用例

H>=0

S>=0

P>=0

All<=1000

All<=1800

All>1800

条件1

H>=0

S>=0

P>=0

预期结果

实际结果

测试结论

1

1-1-1

T

F

F

F

F

F

F

输入有误,请重新输入!

输入有误,请重新输入!

通过

2

-111

F

T

T

F

F

F

F

输入有误,请重新输入!

输入有误,请重新输入!

通过

3

10,10,10

 

T

T

T

T

F

F

T

98

98

通过

4

20,10,10

T

T

T

T

T

F

T

217

217

通过

5

20,20,20

T

T

T

T

T

T

T

252

252

通过

(5)路径覆盖

用例号

测试用例

覆盖路径

预期结果

实际结果

测试结论

1

-1,-1,-1

ab

输入有误,请重新输入!

输入有误,请重新输入!

通过

2

10,10,10

a,c,d

98

98

通过

3

20,10,10

a,c,e,f

217

217

通过

4

20,20,20

a,c,e,g

252

252

通过

 

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

 1 import static org.junit.Assert.*;
 2 
 3 import org.junit.Test;    
 4 import static org.junit.Assert.assertEquals;
 5 import java.util.Arrays;  
 6 import java.util.Collection;    
 7 import org.junit.runner.RunWith;  
 8 import org.junit.runners.Parameterized;  
 9 import org.junit.runners.Parameterized.Parameters; 
10 
11 @RunWith(Parameterized.class)
12 
13 public class test1Test {
14 
15      private int a;
16      private int b;
17      private int x ;
18      private float expected;
19      @Parameters
20      @SuppressWarnings("unchecked")  
21      public static Collection date(){ 
22          Object[][] object={{1,6,9,21.2f},{16, 5, 9,160.3f},{15, 6, 5,145.0f},{30, 11, 22,397.2f}};  
23          return Arrays.asList(object);
24      }
25      public test1Test(int a,int b,int x,float expected)
26      {
27          this.a=a;
28          this.b=b;
29          this.x=x;
30          this.expected=expected;
31      }
32 
33     @Test
34     public void testAdd() {
35         Caculator c=new Caculator();
36          float result=0;
37          result=c.ca(a,b,x);
38          System.out.println(result);
39          assertEquals(expected,result,0.01);
40     
41 }
42 }

 

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

 

4、测试小结

 

(1)通过此次实验对逻辑覆盖有了更深入的了解,实验中运用了语句覆盖、判定覆盖、条件覆盖、条件判定覆盖以及路径覆盖。

(2)使用junit单元测试框架极大加快了测试速度与效率能够同时测试多个用例节约测试时间。

以上是关于第3次作业+105032014116的主要内容,如果未能解决你的问题,请参考以下文章

第02次作业-线性表

第02次作业-线性表

第03次作业-栈和队列

第八次团队作业:汇总博客

第02次作业-线性表

第02次作业-线性表