我对pytest很新,我想知道如何将测试标记为"预计会失败"用某些参数调用时。我像这样参数化测试:
@pytest.mark.parametrize("param1", [False, True])
@pytest.mark.parametrize("param2", [1, 2, 3])
def test_foo(self, param1, param2):
...
我想要实现的是,当使用(param1 == True and param2 == 2)
调用测试时,测试应该失败;而任何其他参数组合都应该通过。
但我还没有找到任何办法。你有什么想法吗?
答案 0 :(得分:6)
@pytest.mark.parametrize("param2, param2", [
(1, True),
(2, True),
pytest.mark.xfail(reason='some bug')((1, False)),
])
def test_foo(self, param1, param2):
...