根据输入的三条边长判断能否组成三角形或者三角形的形状(附黑盒测试样例)
这是我软件测试课程的一个作业题,没什么难度。
1. 题目:输入整数a、b、c,分别作为三角形的三条边,编写程序判断由三条边构成的三角形的类型为:等边三角形、等腰三角形、一般三角形,以及不能构成三角形。
2. 简单的实现:
逻辑图:

代码2 {
3 return ((a + b) <= c || (a + c) <= b || (b + c) <= a) ? "不能构成三角形" : ((a == b && b == c) ? "等边三角形" : ((a != b && b != c && c != a) ? "普通三角形" : "等腰三角形"));
4 }
3. 选择的测试方法:等价划分法。
|
输入条件 |
输入三个整数 |
有效等价类 |
编号 |
无效等价类 |
编号 |
|
整数 |
1 |
a为非整数 |
12 |
||
|
b为非整数 |
13 |
||||
|
c为非整数 |
14 |
||||
|
a,b为非整数 |
15 |
||||
|
b,c为非整数 |
16 |
||||
|
c,a为非整数 |
17 |
||||
|
a,b,c都为非整数 |
18 |
||||
|
三个数 |
2 |
只给a |
19 |
||
|
只给b |
20 |
||||
|
只给c |
21 |
||||
|
只给a,b |
22 |
||||
|
只给b,c |
23 |
||||
|
只给c,a |
24 |
||||
|
给出3个以上 |
25 |
||||
|
非零数 |
3 |
a为0 |
26 |
||
|
b为0 |
27 |
||||
|
c为0 |
28 |
||||
|
a,b为0 |
29 |
||||
|
b,c为0 |
30 |
||||
|
c,a为0 |
31 |
||||
|
a,b,c都为0 |
32 |
||||
|
正数 |
4 |
a<0 |
33 |
||
|
b<0 |
34 |
||||
|
b<0 |
35 |
||||
|
a<0且b<0 |
36 |
||||
|
b<0且c<0 |
37 |
||||
|
c<0 且a<0 |
38 |
||||
|
a<0且a<0 且a<0 |
39 |
||||
|
输出条件 |
普通三角形 |
a+b>c |
5 |
a+b<c |
40 |
|
a+b=c |
41 |
||||
|
b+c>a |
6 |
b+c<a |
42 |
||
|
b+c=a |
43 |
||||
|
c+a>b |
7 |
c+a<b |
44 |
||
|
c+a=b |
45 |
||||
|
等腰三角形 |
a=b=c |
8 |
|
|
|
|
等边三角形 |
a=b&&b!=c |
9 |
|
|
|
|
a=c&&a!=b |
10 |
|
|
||
|
b=c&&c!=a |
11 |
|
|
生成的测试用例:
覆盖有效等价类的测试用例:
|
a |
b |
c |
覆盖有效等价类号码 |
|
3 |
4 |
5 |
1,7 |
|
4 |
4 |
5 |
1,7,8 |
|
4 |
5 |
5 |
1,7,9 |
|
5 |
4 |
5 |
1,7,10 |
覆盖无效等价类的测试用例:
|
a |
b |
c |
覆盖无效等价类号码 |
a |
b |
c |
覆盖无效等价类号码 |
|
2.5 |
4 |
5 |
12 |
0 |
0 |
5 |
29 |
|
3 |
4.5 |
5 |
13 |
3 |
0 |
0 |
30 |
|
3 |
4 |
5.5 |
14 |
0 |
4 |
0 |
31 |
|
3.5 |
4.5 |
5 |
15 |
0 |
0 |
0 |
32 |
|
3 |
4.5 |
5.5 |
16 |
-3 |
4 |
5 |
33 |
|
3.5 |
4 |
5.5 |
17 |
3 |
-4 |
5 |
34 |
|
4.5 |
4.5 |
5.5 |
18 |
3 |
4 |
-5 |
35 |
|
3 |
Null |
Null |
19 |
-3 |
-4 |
5 |
36 |
|
Null |
4 |
Null |
29 |
-3 |
4 |
-5 |
37 |
|
Null |
Null |
5 |
21 |
3 |
-4 |
-5 |
38 |
|
3 |
4 |
Null |
22 |
-3 |
-4 |
-5 |
39 |
|
Null |
4 |
5 |
23 |
3 |
1 |
5 |
40 |
|
3 |
Null |
5 |
24 |
3 |
2 |
5 |
41 |
|
3 |
4 |
5 |
25 |
3 |
1 |
1 |
42 |
|
0 |
4 |
5 |
26 |
3 |
|
1 |
43 |
|
3 |
0 |
5 |
27 |
1 |
4 |
2 |
44 |
|
3 |
4 |
0 |
28 |
3 |
4 |
1 |
45 |


浙公网安备 33010602011771号