2011-10-14 4 views
9

こんにちは:私は、leiningenには素晴らしいユニットテストプラグインがあることに気付きました - あなたは単に "lein test"と入力してください:)。しかし、テストファイルをどのように「見つけ出すか」は不明です。私はそれらを置く必要がある特定のフォルダがありますか?あるいは、名前空間(それがleinドキュメントの中にある)をスキャンするだけの場合、私のテストを見るためにleiningenに使用する必要がある名前空間を知るにはどうすればよいですか?Leiningenプロジェクトにユニットテストを追加するにはどうすればいいですか?

私は単にtests.cljという1つのテストファイルを作ることを考えていました。サンプルテンプレートは本当にうまくいくでしょう。

答えて

8

トップレベルでテスト/ディレクトリを作成してから、mytests.cljというファイルを作成します。ここではサンプルです(警告:私は実際には、既存のテストを、これをコンパイルしますが、簡略化されていなかった):レインバージョン2.7.1のための

(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

ライニングがプロジェクトを作成したとき1つの失敗したテストで既にそこにあるはずのテストディレクトリを作成します。 –

+6

このコードは失敗しました "原因:java.io.FileNotFoundException:classpathにmytests__init.classまたはmytests.cljが見つかりませんでした:" ...これは名前空間に関連していますか? – jayunit100

-3

:{これはLeiningenをは、Java 1.8に2.7.1でLinuxのミントからです。私がテストでより多くそして今、この新しい知識を持っていると思った0_121は、Java HotSpot(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") をし、あなたの努力を参照してください。 ..

関連する問題