testing - 如何在 Clojure 中运行测试文件

标签 testing clojure jedit

我正在使用 jEdit,我想做的是编写一个文件并对其运行测试。我感兴趣的是运行测试的过程,而不是文件本身。

所以我在File.clj中写了这个简单的函数

(defn abs [n]
  (if (neg? n) (- n) n))

而这个测试在 TheTest.clj

(use 'clojure.test)

(load-file "File.clj")

(deftest sample-test
  (testing "abs"
    (is (= 5 (abs (5))))))

(run-tests)

然后我运行文件 TheTest.clj 但它说:

java.io.FileNotFoundException: File.clj (系统找不到指定的文件) (TheTest.clj:49)

有人能告诉我这是做事的方法吗,如果不是,如何运行测试:( 不必在 jEdit 中,如果应该的话,它可能在命令提示符中。我还有 leiningen安装并且 File.cljTheTest.clj 在同一目录中。我还尝试在加载文件函数中提供文件的完整路径,但没有成功。

非常感谢好心人! :)

最佳答案

当然有可能在没有 Leingingen 的情况下使您的示例正常工作。它在我的电脑上工作,只需一个小改动:删除 5 周围的括号,因此测试行显示为

(is (= 5 (abs 5)))

要成功运行脚本,请找到 Clojure JAR 的位置,打开终端并切换到源文件所在的目录,然后执行以下命令:

java -cp /path/to/clojure/clojure-1.4.0.jar clojure.main TheTest.clj

显然将 /path/to/clojure/clojure-1.4.0.jar 替换为系统上 Clojure 的实际路径。如果您完全使用过 Leiningen,那么您的 Maven 存储库中会有一个副本(我在 ~/.m2/repository/org/clojure/clojure/1.4.0/clojure-1.4.0 中找到了它) .jar)

我已经运行了 TheTest.clj 并且输出是:

Testing user

Ran 1 tests containing 1 assertions.
0 failures, 0 errors.

关于testing - 如何在 Clojure 中运行测试文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15366153/

相关文章:

user-interface - 测试自动化中的 GUI 映射策略

mysql - 模拟mysql查询

function - Clojure实践——使用复杂数据类型及其元素的函数?

performance - 了解 Clojure 转换器性能

java - jEdit Java - 比较 Eclipse 中的类路径语法以及如何实现

git - 使用服务器端 Hook 实现 TDD 的红/绿/重构文化

vector - 更新嵌套向量

java - JEdi​​t 宏 - 打开和保存文件

带有负参数的正则表达式 AND 运算符

testing - 什么是持续时间测试?