pytest中是否有任何方法可以知道从命令行中选择了哪些标记?你知道吗
我有一些测试标记为“慢”,需要一个沉重的治疗。我只想在标记物激活的情况下进行治疗。你知道吗
heavy_var = None
def setup_module(module):
global heavy_var
# Need help here!?
if markers["slow"]:
heavy_var = treatment()
def test_simple():
pass
@pytest.mark.slow():
def test_slow():
assert heavy_var.x == "..."
如何知道是否选择了慢速标记?当我用-m not slow
调用pytest时markers["slow"]
将为False,否则为True。你知道吗
如果仅当选择了标有
slow
的测试时才需要运行某些代码,那么可以通过过滤模块范围内的fixture(替换setup_module
)中的测试项来实现。示例:相关问题 更多 >
编程相关推荐