如何将单元测试添加到Leiningen项目?

jay*_*100 9 unit-testing clojure leiningen

嗨伙计们:我注意到leiningen有一个很棒的单元测试插件 - 你只需输入"lein test":).但是,目前尚不清楚它如何"找到"测试文件.我需要将特定文件夹放入其中吗?或者,如果它只是扫描命名空间(这是它在lein文档中所说的),我如何知道我需要使用哪个命名空间来为leiningen查看我的测试?

我正在考虑简单地制作一个名为tests.clj的测试文件.样本模板真的很棒....

Kev*_*vin 8

在顶层创建一个test /目录,然后创建一些文件,比如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))))
Run Code Online (Sandbox Code Playgroud)

  • 此代码失败"由以下原因引起:java.io.FileNotFoundException:无法在类路径上找到mytests__init.class或mytests.clj:"......这是否与命名空间相关? (7认同)
  • 当leiningen创建一个项目时,它将创建一个测试目录,它应该已经存在一个单一的失败测试. (4认同)