请在 2024 年 Clojure 状态调查! 中分享您的想法。

欢迎!有关如何使用本站的更多信息,请参阅 关于 页面。

0
Spec

写一个像这样生成失败的 spec 非常简单

`在 100 次尝试后无法满足 such-that 判断条件。`

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

2 答案

0

由 alexmiller 发布的评论

这些建议是合理的,这个领域可能会与 test.check 一起发展,提供更好的信息。

0
参考: https://clojure.atlassian.net/browse/CLJ-2097(由 alex+import 报告)
...