假设总是返回最小值

时间:2019-05-01 15:13:27

标签: python hypothesis-test python-hypothesis

我正在对假设进行一次小型检验,同时考虑在以后更广泛地使用它。

我尝试使测试获得的参数为0到25之间的整数。我做了以下事情:

from hypothesis import given
from hypothesis.strategies import integers

@given(x=integers(0, 24))
def test_random(self, x):
    print(x)

但是x始终设置为0,所以我尝试了:

@given(x=integers(1, 24))
def test_random(self, x):
    print(x)

,并且始终将其设置为1,表示始终采用最小值。 我在做什么错\在哪里可以将此配置为随机?

编辑:假设版本:hypothesis==4.18.3

1 个答案:

答案 0 :(得分:0)

  

这似乎是假设的继承问题。我尝试将测试函数放在我继承的每个类中,当我建立基础(直接继承自unittest.TestCase)时,它起作用了。启动一个新的测试类,该类继承自base并且仅具有该测试功能,从而导致了相同的问题。感觉像个虫子

这里的假设维护者-请打开一个定义为base的问题,以便我们进行调试。 应该确实有效,我只是在unittest.TestCase的子级子类上尝试了此操作,却没有发现任何问题。

不幸的是,直到您分享一个复制示例,我们才能为您提供帮助。