我想运行一些测试,这些测试依赖于使用pytest和pytest-dependency的其他测试的成功。
我有这个目录结构:
根/ 测试/ 眼镜/ a_test.py b_test.py
a_test.py的内容:
import pytest
@pytest.mark.dependency()
def test_a():
assert 1
@pytest.mark.dependency()
def test_b():
assert 1
b_test.py 的内容:
import pytest
test_dependencies = [
"tests/specs/a_test.py::test_a",
"tests/specs/a_test.py::test_b",
]
@pytest.mark.dependency(depends=test_dependencies, scope="session")
def test_c():
assert 1
要执行测试,我从根目录运行此命令:python -m pytest --rootdir=tests
我的问题是依赖项(test_a 和 test_b)通过,但是依赖项测试(test_c)被跳过
...
请注意,会话范围内的引用必须使用依赖项的完整节点 ID。此节点 id 由模块路径、测试类的名称(如果适用)和测试的名称组成,以双冒号“::”<br/>
...
知道为什么它不能像预期的那样工作吗?