私は 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)
テストが失敗し、他のパラメータの組み合わせは成功するということです。
しかし、これを実行する方法が見つかりませんでした。何かアイデアはありますか?
ベストアンサー1
@pytest.mark.parametrize("param2, param2", [
(1, True),
(2, True),
pytest.param(1, False, marks=pytest.mark.xfail(reason='some bug')),
])
def test_foo(self, param1, param2):
...