假设有一个程序读入3个整数,分别解释为三角形的各边,并据此打印信息,说明三角形是普通的等腰的或等边的。设计一组你认为有效测试此程序的测试用例,设计并实现上题说明的程序(必要的地方增加出错处理)。导出程序流图并按基本路径测试法设计测试用例,真正实施测试后说明所得到的结果
时间: 2024-03-26 16:38:40 浏览: 53
测试用例设计:
1. 输入三个整数,能够构成普通三角形。
2. 输入三个整数,能够构成等腰三角形。
3. 输入三个整数,能够构成等边三角形。
4. 输入三个整数,不能构成三角形。
5. 输入两个整数和一个非整数,期望程序能够给出错误提示。
6. 输入一个整数和两个非整数,期望程序能够给出错误提示。
程序实现:
```python
while True:
try:
a, b, c = map(int, input("请输入三角形的三条边长,用空格分隔:").split())
if a <= 0 or b <= 0 or c <= 0:
raise ValueError("边长必须是正整数")
if a + b <= c or a + c <= b or b + c <= a:
print("无法构成三角形")
elif a == b == c:
print("等边三角形")
elif a == b or b == c or a == c:
print("等腰三角形")
else:
print("普通三角形")
break
except ValueError as e:
print(e)
```
基本路径测试法:
1. 输入三个整数能够构成普通三角形,期望程序能够正确输出“普通三角形”。
2. 输入三个整数能够构成等腰三角形,期望程序能够正确输出“等腰三角形”。
3. 输入三个整数能够构成等边三角形,期望程序能够正确输出“等边三角形”。
4. 输入三个整数不能构成三角形,期望程序能够正确输出“无法构成三角形”。
5. 输入两个整数和一个非整数,期望程序能够给出错误提示。
6. 输入一个整数和两个非整数,期望程序能够给出错误提示。
测试结果:
经过基本路径测试法的测试,我们发现程序能够正确输出普通三角形、等腰三角形、等边三角形和无法构成三角形。在输入不合法的数字或非数字时,程序能够给出相应的错误提示。因此,我们认为此程序的测试用例比较有效。
阅读全文