问题标签 [speclj]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
118 浏览

clojure - 如何开始 Speclj 教程?

受此编码 kata的启发,我想尝试 Clojure 语言。

在我的 Ubuntu 机器上安装后lein,我想speclj用于测试,所以我去了官方教程页面,在那里我被告知只需执行lein new speclj change-counter创建我的新项目。

但是,在我看来,Leiningen 认为我的项目名称是“speclj”而不是“change-counter”,所以src/change-counter/core.clj我没有src/speclj/core.clj.

我在这里想念什么?(~/.lein为空。)

0 投票
1 回答
321 浏览

clojure - 在 speclj 上下文中重用存根/redef

我正在使用 Speclj 为 Clojure 应用程序编写测试。我习惯于在 BDD 中做这样的事情:

但是在 Speclj 中,我似乎找不到如何在特征之间共享存根的示例,所以我目前一直在编写这样的代码:

(我意识到这是一个有点人为的例子,可以说这些断言都可以归于一个特征,但现在让我们假设我有充分的理由编写这样的代码。)

但是,我希望只需要存根called-fn一次,但是将其移出its 会引发错误,因为called-fn调用的是实数而不是我的重定义。

有没有办法在 Speclj 中重用 redefs(或使用 Speclj 存根),这样我就不会被困在特征内将它们全部向下推?

0 投票
1 回答
380 浏览

java - Clojure Speclj with-redefs 和来自不同线程的存根

我正在测试一个函数以确保它调用另一个命名空间中的函数。我想将函数存根(使用speclj stub),所以我可以记录调用。

我得到一个例外:

如果helper-fn在当前命名空间中定义,一切都按预期工作。如何使用 speclj 存根另一个命名空间中的函数?

编辑:当从不同的线程调用存根函数时会发生异常。我创建了一个解决问题的拉取请求

0 投票
1 回答
326 浏览

testing - 如何使测试待定

我正在尝试在 clojure sepclj 中进行测试。

文档建议添加pending特征。它应该如何添加?

以下方法不会产生预期的行为:

谢谢

0 投票
1 回答
260 浏览

testing - 是否有一个命令可以同时从 clojure.test 和 Speclj 运行测试?

我有一个已经在运行的应用程序,其中包含一些用 clojure.test 编写的测试

我想创建一些新测试来提高代码覆盖率,但这次使用 Speclj,因为测试看起来更好。

但是,现在为了确保所有测试都通过,我需要运行 lein test 来运行来自 clojure.test 的测试,并运行 lein spec 来运行来自 speclj 的测试。

无论我选择什么库,是否有一个命令可以运行所有测试?

0 投票
1 回答
56 浏览

clojure - 将值传递给每个 speclj 规范?

我想在每个规范之前启动一项服务,并在每个规范之后关闭它。同时我希望每个规范都能够使用service规范中的。例如(这不起作用):

我怎样才能做到这一点?

0 投票
1 回答
117 浏览

clojure - 如何模拟 sqlKorma?

我不熟悉在 Clojure 中模拟是如何工作的。具体来说,我不确定应该如何测试实现 sqlKorma 查询或调用数据库的函数?理想情况下,我希望能够在我的测试中模拟 sqlKorma。

我正在使用 Speclj 来测试我的应用程序。

0 投票
1 回答
456 浏览

clojure - cloverage FileNotFoundException

我想使用 cloverage,这样我就可以检查我的代码库中有多少是由 speclj 测试的。但是,在将 cloverage 作为 lein 插件安装并运行后:lein cloverage我看到以下异常:

我以前没有使用过 cloverage,所以如何检查我是否正确使用它,以前有没有人遇到过这个问题?

这就是我的 project.clj 的样子:

规范/应用程序/组件/core_spec.clj