自己封装一个计算器calc.py,创建一个用test_case.py编写unittest测试用例的方法
时间: 2024-12-08 20:20:55 浏览: 13
04.测试用例设计方法V1.0.pptx
当你需要创建一个简单的计算器功能并对其进行单元测试时,你可以按照以下步骤操作:
首先,在`calc.py`文件中,我们可以设计一个名为Calculator的简单类,包含基本的加、减、乘、除等计算方法:
```python
# calc.py
class Calculator:
def __init__(self):
pass
def add(self, a, b):
return a + b
def subtract(self, a, b):
return a - b
def multiply(self, a, b):
return a * b
def divide(self, a, b):
if b != 0:
return a / b
else:
raise ValueError("Cannot divide by zero")
```
接下来,在`test_case.py`文件中,我们将编写测试用例来确保Calculator类的功能正常工作,并处理预期错误情况:
```python
# test_case.py
import unittest
from calc import Calculator
class TestCalculator(unittest.TestCase):
def setUp(self):
self.calc = Calculator()
def test_addition(self):
self.assertEqual(self.calc.add(2, 3), 5)
self.assertEqual(self.calc.add(-1, 1), 0)
def test_subtraction(self):
self.assertEqual(self.calc.subtract(5, 2), 3)
self.assertEqual(self.calc.subtract(0, 0), 0)
def test_multiplication(self):
self.assertEqual(self.calc.multiply(4, 6), 24)
self.assertEqual(self.calc.multiply(-2, 3), -6)
def test_division(self):
self.assertAlmostEqual(self.calc.divide(10, 2), 5)
with self.assertRaises(ValueError):
self.calc.divide(10, 0)
if __name__ == '__main__':
unittest.main()
```
在这个例子中,我们使用了`unittest.TestCase`作为基础类,每个方法都是一个独立的测试场景。`setUp`方法用于在每个测试之前设置环境。`test_addition`, `test_subtraction`, `test_multiplication`, 和 `test_division`分别测试了四种基本运算。
运行这个测试用例,可以确保Calculator类按预期执行。如果发现有失败的测试,意味着你需要检查`calc.py`中的实现是否有误。
阅读全文