我有这个结构。
/bin
__init__.py
run_test.py (call pytest.main)
/tests
__init__.py
test_xyz.py
如果我只是通过pytest.main()调用run_test.py,它就不会在" tests"中调用测试。模块。我试过传递一些参数,比如module =" tests"等但他们不工作。我必须完全放弃自动发现并使用套件参数来获取任何测试。
我错过了什么?我试图浏览pytest模块中的代码,但它太复杂而无法理解。文档非常糟糕。
答案 0 :(得分:0)
您可以传递执行内容的完整路径。
import pytest
pytest_args = [
'/tests',
# other tests here...
]
pytest.main(pytest_args)
这将执行目录中找到的所有测试,
没有必要/tests/__init__.py
答案 1 :(得分:0)
我知道稍后再回答。 我希望它将来可以对某人有所帮助。
在根项目目录中最好有run_test.py
,我的意思是将run_test.py
从/bin
移到更高一级的项目结构。