pytest框架-conftest文件

发布时间 2023-10-31 01:36:14作者: 琉璃星眸
conftest.py是pytest特有的本地测试配置⽂件,既可以⽤来设置项⽬级的Fixture,也可以⽤来导⼊外部插件,还可以⽤来指定Hook函数(钩⼦函数)
conftest.py⽂件名称是固定,pytest会⾃动识别该⽂件,只作⽤于它所在的⽬录及⼦⽬录。
conftest.py和pytest.ini的区别:
conftest.py放置一些全局变量或者方法
pytest.ini 放置一些命令、规则
 
项目下创建conftest.py文件:定义一个fixture,设为自动使用,范围为session
import pytest


# @pytest.fixture()
@pytest.fixture(autouse=True, scope="session")  # 当然,这里不默认使用,也不设置scope也一样能被同级和自己目录引用
def fix1():
    print("conftest的fix1")

文件同级别下创建test_case_01.py文件

import pytest


def test01(fix1):
    print("test01")
    assert 1 == 1


if __name__ == '__main__':
    pytest.main(['-vs'])

项目目录下建立子目录DOC,DOC下创建test_case_01.py文件

def test02(fix1):
    print("test02")
    assert 1 == 1

执行项目目录下的test_case_01.py文件:

项目目录下的conftest.py文件里的fixture可以直接被同级和下级目录文件引用。