0

我正在使用假设 python 包进行状态测试。运行测试时出现以下错误:

hypothesis.errors.Flaky: Unreliable assumption: An example which satisfied assumptions on the first run now fails it.

我从类似的帖子中理解了片状错误的含义。我有一个第一次失败但第二次通过的测试。从日志中我可以理解,是哪个测试导致了这个失败。假设在整个测试运行期间尝试相同的测试序列 4 次,其中 2 次通过,2 次失败。

我已经在没有假设的情况下单独尝试了失败的测试,它没有失败。我试图了解导致片状错误的原因。它可能是假设中的错误,如下面的帖子所示:

Flaky: Hypothesis test 产生不可靠的结果是什么意思?

我该如何解决这个问题?请在链接中找到测试运行的日志文件: https ://github.com/aparnasbose/hypothesis/blob/master/flaky%20test

4

1 回答 1

1

问题几乎可以肯定是您的测试对所有输入都不是确定性的。假设可以找到一些论点或动作序列,它们有时会通过,有时会失败。假设认为这是您的测试中的错误,并引发Flaky错误。

要更详细地诊断这一点,我需要查看您的实际源代码。

仅供参考verbose,冗长在这里比debug(转储太多内部状态)有用得多。您可能还需要升级到假设 >= 4.41.1 以改进统计数据。

于 2019-10-16T12:40:04.833 回答