parameteried.expent()里面的参数可以是一个元组嵌套多个字典吗?
时间: 2023-12-10 08:40:40 浏览: 140
A级景区数据文件json
是的,`parametrize` 的参数可以是一个元组嵌套多个字典。每个字典都代表一个测试用例,并指定参数化的值。例如:
```python
import pytest
@pytest.mark.parametrize("test_input,expected_output", [
({'x': 1, 'y': 2}, 3),
({'x': -1, 'y': 2}, 1),
({'x': 0, 'y': 0}, 0)
])
def test_add(test_input, expected_output):
assert test_input['x'] + test_input['y'] == expected_output
```
在上面的示例中,`test_add` 函数带有两个参数 `test_input` 和 `expected_output`,它们被分别赋值为每个字典中的值和预期输出。在 `parametrize` 装饰器中,使用一个元组嵌套多个字典来指定每个测试用例的输入和输出。
阅读全文