使用pytest的xfail单一假设案例?

时间:2019-07-08 19:03:35

标签: python pytest python-hypothesis

使用pytest,我将特定参数设置为fail as expected

我的测试套件使用了假设。我们知道这些错误是我们不打算在此版本的API中修复的。它已经被记录在案,并且修复它所花费的时间不值得此时所需的努力。

有用的是,假设指出了每次测试套件运行时都会发生的故障,我们已经学会了忽略它。显然,这是不好的(特别是因为它导致我们忽略了其他本不应该的东西)。

是否有一种方法可以告诉pytest对单个参数值进行假设失败?我不想完全删除它,因为在地平线上还有一个更大的项目可以修复它。发生这种情况时,我希望假设再次检查这种情况。

我要应用此测试的测试用例的定义如下:

@given(inp=st.text(min_size=1))
def test_input(inp):
   ...

我的目标是可以说inp等于特定值时会失败。否则,该测试将通过。

1 个答案:

答案 0 :(得分:0)

您可以有条件地xfail(或类似地skip)迭代

@given(inp=st.text(min_size=1))
def test_input(inp):
    if inp == some_value:
        pytest.xfail("Marking xfail as inp equals some_value")