Python Pytest:在框架测试中使用App conftest.py

Python Pytest:在框架测试中使用App conftest.py,python,pytest,fixtures,Python,Pytest,Fixtures,我正在尝试使用pytest运行splinter测试用例。我有一个应用程序和一个框架,它们都定义了测试用例。当我开始运行测试时,我的应用程序还使用“main”函数(从_pytest.config import mainmain([,args,…]))运行框架的测试用例 问题是我想使用应用程序conftest.py,而不是框架的conftest.py。我试图通过使用--confcutdir=option(main([,'--confcutdir={}.format(os.path.dirname(\

我正在尝试使用pytest运行splinter测试用例。我有一个应用程序和一个框架,它们都定义了测试用例。当我开始运行测试时,我的应用程序还使用“main”函数(从_pytest.config import main
main([,args,…])
)运行框架的测试用例

问题是我想使用应用程序conftest.py,而不是框架的conftest.py。我试图通过使用--confcutdir=option(
main([,'--confcutdir={}.format(os.path.dirname(\uuuu file\uuu)),…])
)来实现这一点,但它不起作用。当我列出装置(带有--fixtures选项)时,它们不会被列出(在应用程序的
conftest.py
中定义的装置)

那么,有没有人有过如何在应用程序和framework/lib之间共享设备的经验


我已经创建了一个GitHub repo,它模拟了我的项目,并复制了错误:

我在用户“enkidulan”的websauna IRC聊天中得到了很多帮助。他指出我不应该通过
main
函数调用框架测试

我的问题的根源是,似乎最接近测试文件的
conftest.py
总是在覆盖竞争中获胜,即使
-p
指定了一些要加载的装置(不确定它是否是pytests中的bug)

所以他建议我应该将
conftest.py
重命名为不同的名称,比如
fixtures.py
(我这样做了)。然后,我不仅发现应用程序测试(
pytestsrc/App/tests/
),还发现框架测试并添加要使用的装置:
pytest-p App.tests.fixtures src/App/tests/

注意:如果有人想检查代码的外观,repo将使用最新的工作版本进行更新