在Clojure中执行以下操作的正确方法是什么?

(ns todo.test.models.task
  (:use [clojure.test]))

(deftest main-test
  (is (thrown? Exception (throw Exception "stuff")))
  (is (not (thrown? Exception (+ 2 3))))
)


第一个测试用例运行正常,但整个代码段均返回“无法解析符号:抛出?”。

最佳答案

is是在其主体中查找符号thrown?并进行测试的宏。
thrown?实际上不是可以调用的函数。如果is的默认行为无法通过测试发现异常,则无法通过测试,因此您可以从上述示例中删除(not (thrown?并获得所需的结果。

关于unit-testing - 无法解析符号:抛出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11232203/

10-11 05:49