Testing 如何在一个测试失败时立即中断deftest?

Testing 如何在一个测试失败时立即中断deftest?,testing,clojure,shortcut,Testing,Clojure,Shortcut,我正在使用clojure.test,在一些测试中,首先验证某些条件是否成立是有意义的 有没有一种方法可以在一个出现故障时立即中断解除测试 再现我的问题的最小案例: REPL> ((deftest example (is false) (is false))) FAIL in (example) (form-init7701070357449256898.clj:1) expected: false actual: false FAIL in (example) (form-init

我正在使用clojure.test,在一些测试中,首先验证某些条件是否成立是有意义的

有没有一种方法可以在一个
出现故障时立即中断
解除测试

再现我的问题的最小案例:

REPL> ((deftest example (is false) (is false)))

FAIL in (example) (form-init7701070357449256898.clj:1)
expected: false
  actual: false

FAIL in (example) (form-init7701070357449256898.clj:1)
expected: false
  actual: false
我只想报告一个
“FAIL”
,而不是两个


请注意,我有一些测试生成(伪)随机数据,然后我想从循环中多次调用
“is”
。如果我这样做了,比如说,10000次,那么我的终端就会发疯,打印出所有的故障,或者Emacs被卡住。

您可以在名称空间中定义一个名为
test ns hook
的函数,它让您完全控制调用什么测试以及何时调用测试。您可以提供一个按顺序执行测试并在其中一个测试失败时停止的功能。

函数需要在每个名称空间中声明,而不是包含在
使用
要求

中,为什么不使用类似
(is(notany?false?(测试结果列表))