目录
- 1、conftest.py介绍
- 2、conftest.py的特点
- 3、conftest.py文件的使用
- 4、conftest.py的作用域
1、conftest.py介绍
conftest.py
是pytest
框架的一种固定写法,把fixture
或者自己定义的插件写到这个文件里就会自动去调用。我们前面都是将fixture
写到测试用例文件里,在实际工作中更推荐写到conftest.py
文件中,这样更加灵活,易维护。
2、conftest.py的特点
conftest.py
的文件名是固定的,不能修改- 可以通过
conftest.py
实现共享fixture
conftest.py
需要放到包内,即文件夹必须有__init__.py
文件conftest.py
文件中的fixture
和自定插件在使用时不需要import
,pytest
会自动查找
3、conftest.py文件的使用
- 第一步:在项目根目录或者包中创建
conftest.py
import pytest
@pytest.fixture()
def conftest_fixture():
print(\"fixture前置\")
yield
print(\"fixture后置\")
- 第二步:在测试用例文件中使用
def test_case(conftest_fixture):
print(\"测试用例\")
\"\"\"
执行结果
conftest_demo/test_case.py::test_case fixture前置
测试用例
PASSEDfixture后置
\"\"\"
4、conftest.py的作用域
- 在根目录创建
conftest.py
文件,作用范围为所有测试模块 - 在单独测试目录中创建
conftest.py
文件,作用范围为该目录 - 测试根目录和子目录中都有
conftest.py
文件,且存在同名fixture
,则在子目录下的测试用例使用的是子目录conftest.py
中的fixture
总结来说,conftest.py文件可以作用于同级以及以下的模块。
来源:https://www.cnblogs.com/qishuaiRisen/p/16594591.html
本站部分图文来源于网络,如有侵权请联系删除。