有函数f(x,y,z)=x+y2-z,其中x∈[2000,3000],y∈[1,9],z∈[10,30]的。请写出该函数采用边界值分析法设计的测试用例。2) 编写程序,代码填入下框3) 由边界值分析法设计,得到测试用例表4) 用健壮性分析法设计用例5) 用最坏情况测试分析法设计用例
时间: 2024-02-09 16:08:45 浏览: 51
1. 采用边界值分析法设计的测试用例如下:
- x=2000, y=1, z=10
- x=2000, y=1, z=30
- x=2000, y=9, z=10
- x=2000, y=9, z=30
- x=3000, y=1, z=10
- x=3000, y=1, z=30
- x=3000, y=9, z=10
- x=3000, y=9, z=30
2. 下面是采用 Python 编写的该函数的测试程序:
```python
def f(x, y, z):
return x + y ** 2 - z
test_cases = [
{'x': 2000, 'y': 1, 'z': 10},
{'x': 2000, 'y': 1, 'z': 30},
{'x': 2000, 'y': 9, 'z': 10},
{'x': 2000, 'y': 9, 'z': 30},
{'x': 3000, 'y': 1, 'z': 10},
{'x': 3000, 'y': 1, 'z': 30},
{'x': 3000, 'y': 9, 'z': 10},
{'x': 3000, 'y': 9, 'z': 30},
]
for case in test_cases:
x, y, z = case['x'], case['y'], case['z']
result = f(x, y, z)
print(f'f({x}, {y}, {z}) = {result}')
```
3. 采用边界值分析法设计的测试用例表如下:
| 序号 | x | y | z | 预期结果 |
|------|-------|-----|-----|----------|
| 1 | 2000 | 1 | 10 | 1991 |
| 2 | 2000 | 1 | 30 | 1961 |
| 3 | 2000 | 9 | 10 | 2019 |
| 4 | 2000 | 9 | 30 | 1989 |
| 5 | 3000 | 1 | 10 | 3001 |
| 6 | 3000 | 1 | 30 | 2971 |
| 7 | 3000 | 9 | 10 | 3019 |
| 8 | 3000 | 9 | 30 | 2989 |
4. 采用健壮性分析法设计的测试用例如下:
- x=-100, y=5, z=20
- x=3500, y=5, z=20
- x=2500, y=-5, z=20
- x=2500, y=15, z=20
- x=2500, y=5, z=0
- x=2500, y=5, z=40
5. 采用最坏情况测试分析法设计的测试用例如下:
- x=3000, y=9, z=10
- x=2000, y=1, z=30
- x=3000, y=1, z=30
- x=2000, y=9, z=30
- x=2000, y=9, z=10
- x=3000, y=1, z=10
- x=2000, y=1, z=10
- x=3000, y=9, z=30
这些测试用例覆盖了该函数定义域的不同情况,可以有效地检查函数的正确性。
阅读全文