阅读http://doc.pytest.org/en/latest/example/markers.html我看到了基于标记包含或排除某些 python 测试的示例。
包含:
pytest -v -m webtest
Run Code Online (Sandbox Code Playgroud)
不包括:
pytest -v -m "not webtest"
Run Code Online (Sandbox Code Playgroud)
如果我想为包含和排除指定多个标记怎么办?
使用and
/or
组合多个标记,与-k
选择器相同。示例测试套件:
import pytest
@pytest.mark.foo
def test_spam():
assert True
@pytest.mark.foo
def test_spam2():
assert True
@pytest.mark.bar
def test_eggs():
assert True
@pytest.mark.foo
@pytest.mark.bar
def test_eggs2():
assert True
def test_bacon():
assert True
Run Code Online (Sandbox Code Playgroud)
选择所有标记为foo
和未标记为的测试bar
$ pytest -q --collect-only -m "foo and not bar"
test_mod.py::test_spam
test_mod.py::test_spam2
Run Code Online (Sandbox Code Playgroud)
选择所有既foo
没有标记也没有标记的测试bar
$ pytest -q --collect-only -m "not foo and not bar"
test_mod.py::test_bacon
Run Code Online (Sandbox Code Playgroud)
选择标有以下任何一项的测试foo
,bar
$ pytest -q --collect-only -m "foo or bar"
test_mod.py::test_spam
test_mod.py::test_spam2
test_mod.py::test_eggs
test_mod.py::test_eggs2
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
496 次 |
最近记录: |