写一个像这样生成失败的 spec 非常简单
`
在 100 次尝试后无法满足 such-that 判断条件。`
这在很多方面都是预料之中的,但这是一个非常无用的错误。以下是一些可以使这种情况变得更好的建议
- 在异常中包括失败的 spec。我只在 spec.clj 中看到了一个 gen/such-that 的调用,这似乎已经有了 spec 的形式。gen/such-that 接受一个异常构造函数,其中可以在这里使用。
- 允许将 max-tries 从硬编码的 100 更改为其他值。在处理间歇性失败时,将 max-tries 设置为非常小的数字可以使失败更容易重现。