如果我有一个简单的测试用例,带有我自己的自定义标记,如:
class TestClass:
@pytest.mark.first
def test_first(self):
assert True
@pytest.mark.second
def test_second(self):
assert True
@pytest.mark.third
def test_third(self):
assert True
字符串
如何获得整个自定义标记的列表,因为pytest -v --markers
返回预定义标记的列表
@pytest.mark.skipif(condition)
@pytest.mark.xfail(condition, reason=None, run=True, raises=None)
@pytest.mark.parametrize(argnames, argvalues)
@pytest.mark.usefixtures(fixturename1, fixturename2, ...)
@pytest.mark.tryfirst
@pytest.mark.trylast
型
没有
@pytest.mark.first
@pytest.mark.second
@pytest.mark.third
型
3条答案
按热度按时间k5ifujac1#
您需要将标记名称添加到
pytest.ini
中以注册它们。参见https://docs.pytest.org/en/latest/example/markers.html#registering-markerscwdobuhd2#
首先,您需要在名为
pytest.ini
的文件中注册所有自定义标记:字符串
现在,为了获得自定义标记列表,您可以使用以下函数之一:
config.getini('markers')
:这将返回一个包含自定义标记以及内置标记(如pararmetrize
,skip
,skipif
等)的列表。config._getini('markers')
:这将返回一个仅包含自定义标记的列表范例:
型
qybjjes13#
您应该将第一个、第二个和第三个标记注册到pytest.ini中的
[pytest]
,如下所示,以使用pytest --markers
显示它们。字符串