Unit testing 无法解析符号:在此上下文中
我是Clojure的新手,在运行单元测试时遇到了一些问题Unit testing 无法解析符号:在此上下文中,unit-testing,clojure,test-is,Unit Testing,Clojure,Test Is,我是Clojure的新手,在运行单元测试时遇到了一些问题 (ns com.bluepojo.scratch (:require clojure.test)) (defn add-one ([x] (+ x 1)) ) (is (= (add-one 3) 4)) 给出: java.lang.Exception: Unable to resolve symbol: is in this context 我错过了什么 更新: 这项工作: (clojure.test/is (= (
(ns com.bluepojo.scratch
(:require clojure.test))
(defn add-one
([x] (+ x 1))
)
(is (= (add-one 3) 4))
给出:
java.lang.Exception: Unable to resolve symbol: is in this context
我错过了什么
更新:
这项工作:
(clojure.test/is (= (add-one 3) 4))
如何使其不必在is之前声明clojure.test?您对ns宏的使用不太正确,您有几个选项可以修复它。我建议你选一个 1.别名
clojure.test
到较短的值
2.使用使用
请仔细看看是什么解释了这一点只需使用require
和参考
(ns com.bluepojo.scratch
(:require [clojure.test :refer :all))
然后简单地
(is (= (add-one 3) 4))
(are ...)
:reference
还从名称空间中获取要引用的符号列表(例如:refere[is]
)。您在:require
中缺少一个结尾。
sexp和use
现在被弃用,取而代之的是require
:reference
。
(ns com.bluepojo.scratch
(:require [clojure.test :refer :all))
(is (= (add-one 3) 4))
(are ...)