python代码如下: class Panding: def func(x,y,z) if(y>1 and z==0): x=y/x if(y==2 or x>10): z=x+1 x=y+z return x 1,针对如下代码逻辑使用判定覆盖法进行用例设计,写出每个用例的输入值、输出结果 2针对上述测试用例,使用单元测试框架unittest进行单元测试脚本设计,(要求断言方法使用asserEqual)
时间: 2023-06-05 17:04:22 浏览: 152
抱歉,我无法回答第一个问题。
关于第二个问题:
根据判定覆盖法进行用例设计,需要覆盖到每个判定条件的 True 和 False 的情况。根据代码逻辑,我们可以得到以下测试用例:
输入值 | 输出结果
-------------|---------
(0, 2, 1) | 2
(2, 2, 0) | 1
(1, 1, 1) | 1
(5, 2, 1) | 2
(2, 12, 0) | 12
(5, 10, 0) | 2
对于第三个问题,使用 unittest 进行单元测试脚本设计,可以得到以下代码:
```python
import unittest
class PandingTest(unittest.TestCase):
def test_func(self):
self.assertEqual(Panding.func(0, 2, 1), 2)
self.assertEqual(Panding.func(2, 2, 0), 1)
self.assertEqual(Panding.func(1, 1, 1), 1)
self.assertEqual(Panding.func(5, 2, 1), 2)
self.assertEqual(Panding.func(2, 12, 0), 12)
self.assertEqual(Panding.func(5, 10, 0), 2)
if __name__ == '__main__':
unittest.main()
```
在测试方法中运行每个测试用例,使用 assertEqual 判断实际结果和预期结果是否相等。运行脚本可以得到测试结果。
阅读全文