2011-10-14 39 views
9

嗨,大家好:我注意到,leiningen有一个很棒的单元测试插件 - 你只需输入“lein test”:)。但是,它如何“发现”测试文件还不清楚。是否有我需要放入的特定文件夹?或者,如果它只是扫描命名空间(这就是它在lein文档中所说的内容),我怎么知道我需要使用什么命名空间来查看我的测试?如何将单元测试添加到Leiningen项目?

我正在考虑简单地制作一个名为tests.clj的测试文件。示例模板真的很不错....

回答

8

在顶层创建一个测试/目录,然后创建一些文件,比如说mytests.clj。下面是一个示例(警告:我其实没有编译这一点,但简化现有的测试):

(ns mytests 
    (:use clojure.test)) 

(defn myfixture [block] 
    (do 
     (println "before test") 
     (block) 
     (println "after test"))) 

(use-fixtures :each myfixture) 

(deftest mytest 
    (is (= 2 (+ 1 1)))) 
+4

当莱宁宁创建一个项目它无线将创建一个测试目录,它应该已经存在,并且只有一个失败的测试。 –

+6

此代码失败“导致:java.io.FileNotFoundException:找不到mytests__init.class或mytests.clj在类路径上:”...这是与命名空间有关吗? – jayunit100

-3

为雷音版本2.7.1:{这是Linux Mint的与Leiningen 2.7.1上的Java 1.8。 0_121的HotSpot的Java(TM)64位服务器VM} 我想与测试做多,现在有这个新的知识......

lein new <projname> 
cd <projname> 
tree -d 
cat test/<projname>/core_test.clj 
lein test 
-> observe failing test template even on blank new project 

,那么你可以添加:(print "start adding test") ,看到你的努力。 ..

相关问题