pytest 测试函数和测试用例如何绑定,实例
时间: 2024-10-23 10:08:27 浏览: 20
python中pytest收集用例规则与运行指定用例详解
在pytest中,你可以直接将测试函数和测试用例关联起来,而无需显式地声明它们之间的关系。pytest是一种强大的Python测试框架,它支持多种方式来组织和运行测试。
1. **命名约定**:如果你的测试函数名字遵循特定的约定(通常是"test_"开头,后面跟着对功能或模块的描述),pytest会自动识别并运行这些函数作为测试用例。例如:
```python
def test_addition():
assert add(1, 2) == 3
```
2. **装饰器**:可以使用`@pytest.mark.parametrize`装饰器来一次性为多个输入提供一组测试数据。例如:
```python
@pytest.mark.parametrize("a, b, expected", [(1, 2, 3), (0, 0, 0)])
def test_addition(a, b, expected):
assert add(a, b) == expected
```
这里,`add`函数会在每个元组的参数上运行一次。
3. **测试类**:在pytest中,每个测试类下的公共方法也被认为是测试。比如:
```python
class TestMathOperations:
def test_add(self):
assert add(1, 2) == 3
```
测试类中的每个方法都会单独作为一个测试运行。
4. **测试套件**:通过组合多个文件或类的测试,你可以创建一个更大的测试套件。只需导入需要的测试模块即可。
阅读全文