在假设中禁用收缩

Disable shrinking in Hypothesis

我有一个测试,我想禁用收缩阶段。

我能做到

from hypothesis import given, settings, strategies as st
from hypothesis._settings import Phase

@settings(report_multiple_bugs=False, phases=list(Phase)[:-1])
@given(my_composite_generator())
def test_legacy_rack_conversion(input):
    assert_stuff_about(input)

但我不喜欢从第三方库中导入下划线开头的私有内容。

是否有更推荐的方法来禁用测试收缩?

https://hypothesis.readthedocs.io/en/latest/settings.html#controlling-what-runs

请注意,您应该 from hypothesis import Phase,因此不涉及私有 API,而且 list(Phase)[:-1] 是不正确的 - 它会跳过默认情况下关闭的解释阶段,而不是收缩.最好明确列出您想要的阶段。