如何修复 pytest 标记不接受测试

How to fix pytest marker not picking up tests

我在 src/com/xyz/tests/bla_tests/file1.py 进行测试。我在那个路径上也有 file2.py。

我在 file1.py

中有以下代码
class HelloWorld():
    @pytest.mark.regressiontest
    def test_001_bla?():
        # Some code here. 

从命令行我通过以下方式调用测试:

pytest -v -m regressiontest but no items are collected. It says : collected 0 items. 

我的目标是将跨各种文件的多个测试标记为回归测试,并能够从命令行 运行 它们。 (在 Mac 上)。 以下命令能够通过

收集测试
pytest -q file1.py -v -m regressiontest 

This says: collected 20 items / 11 deselected / 9 selected     

有人可以帮帮我吗?

当您调用 pytest -v -m regressiontest 时,您是否在进行当前文件夹测试? 我相信你应该做 pytest src/com/xyz/tests/bla_tests/ -v -m regressiontest。希望这可以帮助。

得到分辨率here

pytest by default doesn't look for tests in files not named like test_*.py

also using --basetemp=. actually does a rm -rf . so that's def not a good idea, we should warn about that

在我的例子中,我的文件名不是从 test_*

开始的