我有一个setup.cfg
文件,指定用于pytest
的默认参数。虽然这对于在我的整个包上运行测试很有用,但我希望能够在单个模块上运行测试时忽略setup.cfg
选项。有没有办法轻松做到这一点?
答案 0 :(得分:3)
在存在/dev/null
的系统上,这似乎可以解决问题。
pytest -c /dev/null specific/test/location
-c
告诉pytest忽略隐式配置文件,而改用提供的配置。我不确定pytest尝试以静默方式读取它会失败还是认为它为空。
请注意,这不仅会覆盖您的测试位置,还会覆盖setup.cfg中可能具有的任何其他配置,例如覆盖范围。
答案 1 :(得分:2)
您还可以在当前目录中创建一个空的pytest.ini
文件。
在查找setup.cfg
之前,配置文件发现功能会尝试查找与此名称匹配的文件。
答案 2 :(得分:1)
这并不理想,但就目前而言,我已经决定根据pytest docs中的建议创建一个同事可以用来运行测试的runtests.py
。它失去了我想要保留在setup.cfg
中的一些功能(但是当我进行更有针对性的测试时也能够关闭),但至少它给了我其他人可以使用的功能轻松进行测试。