编写一个识别三角形形状(等边三角形、等腰三角形、普通三角形,不构成三角形) 的程序,并应用白盒测试中的基本路径测试法,和数据流测试法,设计测试用例并进行测 试。 all-uses
时间: 2024-05-15 21:14:15 浏览: 156
以下是基于白盒测试的基本路径测试法和数据流测试法的测试用例设计:
基本路径测试法:
1. 输入三个边长均为 0,期望输出“不构成三角形”
2. 输入三个边长均为正整数,但无法构成三角形,期望输出“不构成三角形”
3. 输入三个边长均相等的正整数,期望输出“等边三角形”
4. 输入两个边长相等的正整数和一个不同的正整数,期望输出“等腰三角形”
5. 输入三个边长均不相等的正整数,期望输出“普通三角形”
数据流测试法:
1. 输入三个边长均为 0,期望输出“不构成三角形”
2. 输入三个边长为 -1,期望输出“不构成三角形”
3. 输入两个边长为 -1,一个边长为 2,期望输出“不构成三角形”
4. 输入三个边长均为正整数,但无法构成三角形,期望输出“不构成三角形”
5. 输入三个边长均相等的正整数,期望输出“等边三角形”
6. 输入两个边长相等的正整数和一个不同的正整数,期望输出“等腰三角形”
7. 输入三个边长均不相等的正整数,期望输出“普通三角形”
代码实现如下:
```python
def triangle_type(a, b, c):
if a <= 0 or b <= 0 or c <= 0:
return "不构成三角形"
if a + b <= c or a + c <= b or b + c <= a:
return "不构成三角形"
if a == b and b == c:
return "等边三角形"
if a == b or b == c or a == c:
return "等腰三角形"
return "普通三角形"
```
基本路径测试法的测试结果如下:
1. 输入:a=0, b=0, c=0,期望输出:不构成三角形,实际输出:不构成三角形
2. 输入:a=1, b=2, c=3,期望输出:不构成三角形,实际输出:不构成三角形
3. 输入:a=3, b=3, c=3,期望输出:等边三角形,实际输出:等边三角形
4. 输入:a=2, b=2, c=3,期望输出:等腰三角形,实际输出:等腰三角形
5. 输入:a=3, b=4, c=5,期望输出:普通三角形,实际输出:普通三角形
数据流测试法的测试结果如下:
1. 输入:a=0, b=0, c=0,期望输出:不构成三角形,实际输出:不构成三角形
2. 输入:a=-1, b=-1, c=-1,期望输出:不构成三角形,实际输出:不构成三角形
3. 输入:a=-1, b=-1, c=2,期望输出:不构成三角形,实际输出:不构成三角形
4. 输入:a=2, b=2, c=5,期望输出:不构成三角形,实际输出:不构成三角形
5. 输入:a=3, b=3, c=3,期望输出:等边三角形,实际输出:等边三角形
6. 输入:a=2, b=2, c=3,期望输出:等腰三角形,实际输出:等腰三角形
7. 输入:a=3, b=4, c=5,期望输出:普通三角形,实际输出:普通三角形
以上测试用例覆盖了基本路径测试法中的所有路径和数据流测试法中的所有数据流,可以有效地测试程序的正确性。
阅读全文