三角形白盒+黑盒测试用例参考答案梁早清.docx
《三角形白盒+黑盒测试用例参考答案梁早清.docx》由会员分享,可在线阅读,更多相关《三角形白盒+黑盒测试用例参考答案梁早清.docx(22页珍藏版)》请在冰豆网上搜索。
三角形白盒+黑盒测试用例参考答案梁早清
程序源码
publicclassTriangle{
publicstaticinttrijudge(inta,intb,intc){
if(a
if(a==b&&b==c)
return3;
elseif(a==b||b==c||a==c)
return2;
elsereturn1;
}
elsereturn0;
}
}
白盒测试用例
程序流程图
路径覆盖、判定覆盖、条件覆盖、条件组合覆盖测试用例
下表列出了各种白盒测试可能用到的测试用例:
测试用例编号
输入
期望输出
Tc1
-2,-3,-4
0
Tc2
2,3,-4
0
Tc3
2,-4,3
0
Tc3
4,-2,-3
0
Tc5
-4,2,3
0
Tc6
-2,4,-3
0
Tc7
-2,-3,4
0
Tc8
3,3,3
3
Tc9
3,3,4
2
Tc10
4,3,3,
2
Tc11
3,4,3
2
Tc12
2,3,4
1
测试套件
测试用例编号
输入
期望输出
覆盖对象
语句覆盖
Tc1
2,3,-4
0
Return0
Tc2
2,3,4
1
Return1
3,3,4
2
Return2
3,3,3
3
Return3
判定覆盖
-4,2,3
0
J1F
2,3,4
1
J1T,J2F,J3F
3,3,4
2
J1T,J2F,J3T
3,3,3
3
J1T,J2T
条件覆盖
-4,2,3
C1F,
3,-4,2
C1T,C2F
2,3,-4
C1T,C2T,C3F
3,3,3
C1T,C2T,C3T,C4T,C5T,C6T
2,3,4
C1T,C2T,C3T,C4F,C5F,C6F
注意:
此时条件覆盖全满足,但是判定覆盖J3的T覆盖不满足。
条件判定覆盖
-4,2,3
C1F,J1F
3,-4,2
C1T,C2F,J1F
2,3,-4
C1T,C2T,C3F,J1F
3,3,3
C1T,C2T,C3T,C4T,C5T,C6T
J1T,J2T
2,3,4
C1T,C2T,C3T,C4F,C5F,C6F
J1T,J2F,J3F
3,3,4
C1T,C2T,C3T,C4T,C5F,C6F
J1F,J2F,J3T
相对条件覆盖来讲,增加了一个等腰三角形测试用例来覆盖J3的T判定
条件组合覆盖
-2,-3,-4
C1F,C2F,C3F
2,3,-4
C1F,C2F,C3T
2,-4,3
C1F,C2T,C3F
4,-2,-3
C1F,C2T,C3T
-4,2,3
C1T,C2F,C3F
-2,4,-3
C1T,C2F,C3T
-2,-3,4
C1T,C2T,C3F
3,3,3
C1T,C2T,C3T
C4T,C5T,C6T
3,3,4
C1T,C2T,C3T
C4T,C5F,C6F
4,3,3,
C1F,C2T,C3T
C4F,C5T,C6F
3,4,3
C1F,C2T,C3T
C4F,C5F,C6T
2,3,4
C1F,C2T,C3T
C4F,C5F,C6F
说明:
虽然理论上有2^6=128个组合测试用例,但是有一些不可能,舍弃。
控制流图
独立路径测试用例
测试用例编号
a
b
c
期望输出
1
2
3
5
非三角形
2
2
5
3
非三角形
3
5
3
2
非三角形
4
2
3
4
普通三角形
5
4
3
3
等腰三角形
6
3
4
3
等腰三角形
7
3
3
4
等腰三角形
8
3
3
3
等边三角形
黑盒测试用例
边界值测试用例
从输入范围考虑,设三条边分别为a,b,c,则它们的边界值为:
1,100。
因此,边界值的测试用例的每一条边应依次取1,2,99,100,其他两条边取正常值构成测试用例,最后再加上每条边都是正常值所构成的测试用例,总共有13个。
如果要设计健壮性边界值的测试用例,则每一条边应依次取0,1,2,99,100,101,其他两条边取正常值构成测试用例,最后再加上每条边都是正常值所构成的测试用例,,总共有19个健壮性边界值测试用例。
边界值测试用例
测试用例编号
a
b
c
期望输出
1
1
50
50
等腰三角形
2
2
50
50
等腰三角形
3
99
50
50
等腰三角形
4
100
50
50
等腰三角形
5
50
1
50
等腰三角形
6
50
2
50
等腰三角形
7
50
99
50
等腰三角形
8
50
100
50
等腰三角形
9
50
50
1
等腰三角形
10
50
50
2
等腰三角形
11
50
50
99
等腰三角形
12
50
50
100
等腰三角形
13
50
50
50
等边三角形
健壮性边界值测试用例
测试用例编号
a
b
c
期望输出
1
0
50
50
超出范围
2
1
50
50
等腰三角形
3
2
50
50
等腰三角形
4
99
50
50
等腰三角形
5
100
50
50
等腰三角形
6
101
50
50
超出范围
7
50
0
50
超出范围
8
50
1
50
等腰三角形
9
50
2
50
等腰三角形
10
50
99
50
等腰三角形
11
50
100
50
等腰三角形
12
50
101
50
超出范围
13
50
50
0
超出范围
14
50
50
1
等腰三角形
15
50
50
2
等腰三角形
16
50
50
99
等腰三角形
17
50
50
100
等腰三角形
18
50
50
101
超出范围
19
50
50
50
等边三角形
等价类测试用例
输出等价类及测试用例
从输出的结果来考虑等价类,有四种等价类,不能构成三角形、普通三角形、等边三角形、等腰三角形。
因为只从输出考虑,所以,变量只有一个,且没有无效等价类,因此,弱,强,一般,健壮等价类测试用例都相同。
具体测试用例如下:
测试用例编号
a
b
c
期望输出
1
2
3
4
普通三角形
2
2
3
5
非三角形
3
3
3
4
等腰三角形
4
3
3
3
等边三角形
输入等价类及测试用例
输入等价类划分
a
b
c
无效等价类
<1
<1
<1
>100
>100
>100
有效等价类
1-100
1-100&&b=a
1-100&&b!
=a
1-100&&c=a&&c=b(等边)
1-100&&c=a&&c!
=b&&c+a>b(c=a等腰)
1-100&&c=a&&c!
=b&&c+a<=b(非三角形)
1-100&&c!
=a&&c=b&&c+b>a(c=b等腰)
1-100&&c!
=a&&c=b&&c+b<=a(非三角形)
1-100&&c!
=a&&c!
=b&&c>=a+b(非三角形,c最大)
1-100&&c!
=a&&c!
=b&&c1-100&&c!
=a&&c!
=b&&ca-b&&C<=b-a(非三角形,b最大)
1-100&&c!
=a&&c!
=b&&ca-b&&C>b-a(普通三角形或a=b的等腰三角形)
注意:
黄色的相关测试用例还没有写,以后再补上(现在还没有补上,同学们注意了,呵呵)
弱一般等价类测试用例
测试用例编号
a
b
c
期望输出
1
3
3
3
等边三角形
2
3
4
3
等腰三角形
3
4
3
3
等腰三角形
4
2
3
5
非三角形
5
3
5
2
非三角形
6
5
3
2
非三角形
7
2
3
4
普通三角形
8
要补上
9
要补上
强一般等价类测试用例
测试用例编号
a
b
c
期望输出
1
3
3
3
等边三角形
2
3
4
3
等腰三角形
3
4
3
3
等腰三角形
4
3
3
7
非三角形
5
5
3
2
非三角形
6
3
5
2
非三角形
7
3
2
5
非三角形
8
2
3
4
普通三角形
9
3
3
4
等腰三角形
要补上
要补上
弱健壮等价类测试用例
测试用例编号
a
b
c
期望输出
1
3
3
3
等边三角形
2
3
4
3
等腰三角形
3
4
3
3
等腰三角形
4
2
3
5
非三角形
5
3
5
2
非三角形
6
5
3
2
非三角形
7
2
3
4
普通三角形
8
0
3
3
输入错误
90
101
3
3
输入错误
10
3
0
3
输入错误
11
3
101
3
输入错误
12
3
3
0
输入错误
13
3
3
101
输入错误
要补上
。
。
。
。
。
。
强健壮等价类测试用例
测试用例编号
a
b
c
期望输出
1
3
3
3
等边三角形
2
3
4
3
等腰三角形
3
4
3
3
等腰三角形
4
3
3
7
非三角形
5
5
3
2
非三角形
6
3
5
2
非三角形
7
3
2
5
非三角形
8
2
3
4
普通三角形
9
3
3
4
等腰三角形
10
0
0
0
输入错误
11
0
0
3
输入错误
12
0
0
101
输入错误
13
0
3
0
输入错误
14
0
3
4
输入错误
15
0
3
2
输入错误
16
0
101
0
输入错误
17
0
101
3
输入错误
18
0
101
101
输入错误
19
101
0
0
输入错误
20
101
0
3
输入错误
21
101
0
101
输入错误
22
101
3
0
输入错误
23
101
3
3
输入错误
24
101
3
3
输入错误
25
101
3
101
输入错误
26
101
101
0
输入错误
27
101
101
3
输入错误
28
101
101
101
输入错误
29
3
0
0
输入错误
30
3
0
3
输入错误
31
3
0
5
输入错误
32
3
0
2
输入错误
33
3
101
0
输入错误
34
3
101
3
输入错误
35
3
101
5
输入错误
36
3
3
0
输入错误
37
3
3
101
输入错误
38
3
4
0
输入错误
39
3
4
101
输入错误
因果图及测试用例
因果图
上图中,等腰三角形因果关系可以利用另外的逻辑表示,见下图
根据因果图得到的决策表以及测试用例
规则
条件
c1
1
0
0
0
0
0
0
c2
0
1
0
0
0
0
0
c3
1
0
0
0
0
0
0
c4
0
1
0
0
0
0
0
c5
1
0
0
0
0
0
0
c6
0
1
0
0
0
0
0
c7
1
0
c8
1
0
c9
1
0
c10
1
0
1
0
0
c11
1
0
0
1
0
c12
1
0
0
0
1
动作
输入错误
√
√
√
√
√
√
非三角形
√
√
√
普通三角形
√
等腰三角形
√
√
√
等边三角形
√
测试
用例
输入
共14个
期望
输出
决策表及测试用例
条件
c1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
c2
-
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
c3
-
-
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
c4
-
-
-
1
0
0
0
0
0
0
0
0
0
0
0
0
0
c5
-
-
-
-
1
0
0
0
0
0
0
0
0
0
0
0
0
c6
-
-
-
-
-
1
0
0
0
0
0
0
0
0
0
0
0
c7
-
-
-
-
-
-
1
0
0
0
0
0
0
0
0
0
0
c8
-
-
-
-
-
-
-
1
0
0
0
0
0
0
0
0
0
c9
-
-
-
-
-
-
-
-
1
0
0
0
0
0
0
0
0
c10
-
-
-
-
-
-
-
-
-
1
1
1
1
0
0
0
0
c11
-
-
-
-
-
-
-
-
-
0
0
1
1
1
1
0
0
c12
-
-
-
-
-
-
-
-
-
0
1
0
1
0
1
1
0
动作
输入错误
√
√
√
√
√
√
非三角形
√
√
√
普通三角形
√
等腰三角形
√
√
√
等边三角形
√
不可能
√
√
√
测试
用例
输入
共17个
期望
输出