pytest yeild
时间: 2023-10-26 22:26:12 浏览: 213
python test pytest
pytest中的`yield`是用于生成器函数的关键字,它可以将一个函数转变为生成器函数。生成器函数可以用于迭代,每次迭代返回一个值,然后暂停执行,直到下一次迭代。
在pytest中,`yield`通常用于测试用例的参数化。当在测试用例中使用`yield`关键字时,pytest会将测试用例作为一个生成器函数处理,每次迭代都会执行一次测试。这样可以方便地对不同参数组合进行测试。
以下是一个示例:
```python
import pytest
@pytest.mark.parametrize("input, expected", [
(1, 2),
(3, 4),
(5, 6)
])
def test_addition(input, expected):
result = input + 1
assert result == expected
```
在这个示例中,`@pytest.mark.parametrize`装饰器将测试用例`test_addition`参数化,并传入不同的输入和期望输出。每次迭代,pytest会使用不同的参数执行测试用例。
希望这个解答对你有帮助!如果你还有其他问题,请随时提问。
阅读全文