在自定义位置寻找 conftest.py
Look for conftest.py in custom location
我的目录中有如下目录结构
tests
|
|__A
| |__test_1.py
|__B
| |__test_2.py
|__C
| |__test3.py
|__D
| |__test4.py
|__test_setup
| |__conftest.py
|__pytest.ini
所以我的 pytest.ini 看起来如下
[pytest]
confcutdir = tests/test_setup/
rootdir = tests/test_setup
所以我的问题是我希望 pytest 为 conftest.py 调查 tests/test_setup
一种选择是将 conftest.py 保留在测试目录级别(这不是一个好的选择)
当我尝试 运行:
py.test --multihost-config=test.yaml test_1.py -q -s
无法加载 conftest.py,其中有一堆固定装置。
我做得对还是我的 pytest.ini 搞砸了?
求推荐。
提前致谢
conftests 是某些目录的本地插件
如果您想以不同的方式使用它们,
您需要创建插件并将它们引用为您要使用的插件
(插件可以只是 python 您在本地比赛中命名的模块)
一般来说,你永远不应该导入夹具
因为每个导入站点都被视为一个新装置(即使对于会话范围)
相反,您应该声明包含固定装置的模块
我的目录中有如下目录结构
tests
|
|__A
| |__test_1.py
|__B
| |__test_2.py
|__C
| |__test3.py
|__D
| |__test4.py
|__test_setup
| |__conftest.py
|__pytest.ini
所以我的 pytest.ini 看起来如下
[pytest]
confcutdir = tests/test_setup/
rootdir = tests/test_setup
所以我的问题是我希望 pytest 为 conftest.py 调查 tests/test_setup 一种选择是将 conftest.py 保留在测试目录级别(这不是一个好的选择)
当我尝试 运行:
py.test --multihost-config=test.yaml test_1.py -q -s
无法加载 conftest.py,其中有一堆固定装置。
我做得对还是我的 pytest.ini 搞砸了?
求推荐。 提前致谢
conftests 是某些目录的本地插件
如果您想以不同的方式使用它们, 您需要创建插件并将它们引用为您要使用的插件
(插件可以只是 python 您在本地比赛中命名的模块)
一般来说,你永远不应该导入夹具
因为每个导入站点都被视为一个新装置(即使对于会话范围)
相反,您应该声明包含固定装置的模块