1. 测试程序设计 实现求两整数的加、减、乘、除运算结果,要求两整数的范围都是[0,100]。从键盘输入数m,数n,判断他们的范围,若不在[0,100]范围内,则输出提示语,要求重新输入,并且在做除法运算时,当除数为0时,输出提示语,说明除数不能为0。 2.黑盒测试 根据具体程序功能设计测试用例,进行黑盒测试并撰写测试报告。要求:测试内容应采用下述测试方法中的至少两种方法,等价类划分法、边界值分析法、错误推测法、因果图法。
时间: 2023-10-08 16:03:46 浏览: 79
1. 测试程序设计
以下是实现该程序的Python代码:
```
def calculate(m, n, operator):
if m < 0 or m > 100 or n < 0 or n > 100:
print("输入的数值超出范围,请重新输入!")
return None
if operator == '+':
return m + n
elif operator == '-':
return m - n
elif operator == '*':
return m * n
elif operator == '/':
if n == 0:
print("除数不能为0,请重新输入!")
return None
else:
return m / n
else:
print("输入的运算符有误,请重新输入!")
return None
m = int(input("请输入第一个整数(0~100):"))
n = int(input("请输入第二个整数(0~100):"))
operator = input("请输入运算符(+、-、*、/):")
result = calculate(m, n, operator)
if result is not None:
print("运算结果为:", result)
```
2. 黑盒测试
等价类划分法:
假设输入的两个整数均分为三类:小于0,大于100,0~100之间的数。运算符分为四类:加、减、乘、除。
则共有9种等价类:
1. m < 0,n < 0,operator为任意一个运算符
2. m > 100,n > 100,operator为任意一个运算符
3. m >= 0 and m <= 100,n >= 0 and n <= 100,operator为'+'
4. m >= 0 and m <= 100,n >= 0 and n <= 100,operator为'-'
5. m >= 0 and m <= 100,n >= 0 and n <= 100,operator为'*'
6. m >= 0 and m <= 100,n >= 0 and n <= 100,n不等于0,operator为'/'
7. m >= 0 and m <= 100,n = 0,operator为'/'
8. m < 0,n >= 0 and n <= 100,operator为任意一个运算符
9. m > 100,n >= 0 and n <= 100,operator为任意一个运算符
测试用例:
1. 输入:-1, -2, '+';预期输出:输入的数值超出范围,请重新输入!
2. 输入:101, 102, '-';预期输出:输入的数值超出范围,请重新输入!
3. 输入:0, 100, '+';预期输出:100
4. 输入:100, 0, '-';预期输出:100
5. 输入:50, 50, '*';预期输出:2500
6. 输入:100, 2, '/';预期输出:50
7. 输入:50, 0, '/';预期输出:除数不能为0,请重新输入!
8. 输入:-1, 50, '+';预期输出:输入的数值超出范围,请重新输入!
9. 输入:101, 50, '*';预期输出:输入的数值超出范围,请重新输入!
边界值分析法:
假设输入的两个整数均分为五类:小于0,大于0且小于100,等于0,等于100,大于100。运算符分为四类:加、减、乘、除。
则共有20种测试用例:
1. 输入:0, 0, '+';预期输出:0
2. 输入:0, 100, '+';预期输出:100
3. 输入:100, 0, '+';预期输出:100
4. 输入:100, 100, '+';预期输出:200
5. 输入:0, 0, '-';预期输出:0
6. 输入:0, 100, '-';预期输出:-100
7. 输入:100, 0, '-';预期输出:100
8. 输入:100, 100, '-';预期输出:0
9. 输入:0, 0, '*';预期输出:0
10. 输入:0, 100, '*';预期输出:0
11. 输入:100, 0, '*';预期输出:0
12. 输入:100, 100, '*';预期输出:10000
13. 输入:0, 100, '/';预期输出:0
14. 输入:100, 0, '/';预期输出:除数不能为0,请重新输入!
15. 输入:100, 100, '/';预期输出:1
16. 输入:-1, 0, '+';预期输出:输入的数值超出范围,请重新输入!
17. 输入:0, -1, '+';预期输出:输入的数值超出范围,请重新输入!
18. 输入:101, 0, '+';预期输出:输入的数值超出范围,请重新输入!
19. 输入:0, 101, '+';预期输出:输入的数值超出范围,请重新输入!
20. 输入:100, 101, '+';预期输出:输入的数值超出范围,请重新输入!
以上就是本题的黑盒测试报告。
阅读全文