pytest中怎么设置多个fixture,并使用它
时间: 2024-10-21 07:05:12 浏览: 11
pytest-lazy-fixture:有助于在pytest.mark.parametrize中使用固定装置
在pytest中,你可以设置多个fixture(也称为测试套件或辅助函数)来组织和复用代码,特别是在需要初始化一些共享资源或者数据的时候。下面是如何在一个测试模块中设置并使用多个fixture的一个例子:
```python
# test_example.py
import pytest
# 定义第一个fixture
@pytest.fixture
def fixture_a():
print("Setting up fixture_a")
yield "Fixture A Value" # 这里yield是为了让其他函数可以迭代这个fixture
print("Tearing down fixture_a")
# 定义第二个fixture
@pytest.fixture
def fixture_b(fixture_a):
print(f"Using fixture_a value: {fixture_a}")
yield "Fixture B Value"
print("Tearing down fixture_b")
# 使用fixture
def test_case(fixture_a, fixture_b):
print(f"Using both fixtures: {fixture_a} and {fixture_b}")
# 或者使用with语句自动管理fixture
def test_case_with_fixture(fixture_a):
with fixture_a:
print("Inside test case using fixture_a")
#
阅读全文