案例实战—直角三角形
试用等价类划分、边界值分析和因果图加判定表驱动法为三角形问题中的直角三角形设计测试用例。假定三边边长a、b和c均为1到100之间的正整数,其中整数的要求通过数据类型控制。直角三角形问题满足以下规则:
当三边中任意两边边长之和小于等于第三边,则输出“非三角形“;
当其中两边边长的平方和等于第三边的平方,则输出“直角三角形”;
- 当任意两边边长的平方和都不等于第三边的平方,则输出“一般三角形”。
- 当三边中任意一边边长小于1或者大于100,则给出“输入无效”的提示信息。
要求如下:
- ① 等价类划分法中需分析输入域和输出域得到等价类,并设计覆盖弱健壮等价类的测试用例。
- ② 边界值分析法在等价类划分的基础上考虑输入域和输出域的边界情况,补充测试用例。
- ③ 判定表驱动法需分析程序的规格说明,列出原因和结果,画出因果图,并将因果图转换为判定表,设计测试用例。
- ④ 运行待测程序,将设计的测试用例通过界面实现输入,记录实际输出,并给出测试结果。如果预期输出与实际输出相匹配,则测试结果为Passed,否则,测试结果为Failed。
- ⑤ 通过应用实例,简单总结归纳等价类划分、边界值分析、判定表驱动等黑盒测试技术在测试用例设计和测试执行方面的优缺点及适用情况。
参考答案:
(1) 等价类划分
分析输入域得到的等价类如表1所示。
表1 直角三角形问题输入域等价类表
null | 有效等价类 | 编号 | 无效等价类 | 编号 |
---|---|---|---|---|
取值范围 | 1≤a≤100 | 1 | a<1 | 11 |
a>100 | 12 | |||
1≤b≤100 | 2 | b<1 | 13 | |
b>100 | 14 | |||
1≤c≤100 | 3 | c<1 | 15 | |
c>100 | 16 | |||
构成一般三角形 | a+b>c | 4 | a+b≤c | 17 |
b+c>a | 5 | b+c≤a | 18 | |
c+a>b | 6 | a+c≤b | 19 | |