2011-10-14 53 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") ,看到你的努力。 ..

相關問題