问题标签 [eunit]

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 投票
2 回答
1244 浏览

erlang - 如何在使用 rebar 运行 eunit 测试之前启动 lager

我想在执行lager任何eunit测试之前开始,以便在测试实际运行时可以看到日志(我将日志用于调试目的)。

但是我有数百个测试(分布在多个应用程序和模块中),我不想检查每一个测试并放在lager:start()开头,所以我想知道是否有办法在执行之前告诉rebar(或eunit)执行测试?lager:start()eunit

0 投票
2 回答
842 浏览

erlang - rebar编译eunit错误

我使用 rebar 使用命令“rebar compile eunit”进行 eunit 测试,但得到错误信息:

我真的不知道这是什么意思,谁能告诉我为什么?

PS:我的英文很差,请见谅

myapp_app.erl 像这样:

它来自这里:https ://github.com/rebar/rebar/wiki/Getting-started

我按照步骤,但得到了错误!

我的erlang版本是R15B03

操作系统:OS X Lion

0 投票
3 回答
333 浏览

vim - 如何在 Rebar 中使用 Vim

尝试启动并运行 Vim + Rebar。

他们分开工作,但不能一起工作。我想要实现的是在不离开 Vim 的情况下运行 eunit。

我想这可以通过以下插件https://github.com/mbbx6spp/vim-rebar来实现。不幸的是,记录很差。

如何快速运行测试、查看输出、代码并再次查看。

您的所有反馈将不胜感激。

0 投票
1 回答
2194 浏览

unit-testing - Erlang - Eunit 设置功能不运行

我想编写测试,其中设置和清理功能不会为每个测试执行一次,而是一次 - 在测试开始和测试结束时。

所以我尝试了这种方式:

some_test1/0在哪里

安装程序不会以这种方式执行。

但是这样:

或者

都很好。

我不明白它为什么起作用,我的问题是我不能在 ?_test(....) 中编写多个断言。

通过运行,eunit:test(my_module, [verbose]).我看到只有 1 个测试通过了。

更新

示例 1

一个小例子:

运行 eunit:

一个小修改:

并且测试仍然通过。

示例 2

然而

失败

示例 3

现在我看到有 2(!) 个测试。

我可以忘记块语句并编写没有变量的测试,但我认为这可能很难阅读,它应该与块一起使用。

0 投票
2 回答
493 浏览

emacs - 在 Emacs 中显示 EUnit 代码覆盖率

我正在使用 Rebar 构建我的 erlang 项目,并希望将它与 Emacs 更紧密地集成。我发现如果我添加{cover_print_enabled, true}.到我的钢筋配置文件中,我会在构建输出中获得代码覆盖率。

但是,还有一个选项cover_export_enabled可以输出某种形式的二进制文件。是否有一个 emacs 插件来解析该文件和我的代码颜色代码以显示测试所涵盖的代码?

我真的不喜欢切换到浏览器来查看代码覆盖率。

0 投票
1 回答
736 浏览

erlang - 使用 rebar 运行 eunit test 设置 mnesia 目录

我正在使用 rebar,我需要为我的 Erlang eunit 测试设置 mnesia 目录(您通常可以通过erl -mnesia dir DIRECTORY在 cmdline 上执行此操作)。如何使用带有 rebar 的特殊 mnesia 目录运行 eunit 测试?

我认为erl_optsrebar.conf 文件的部分不会有帮助,因为 mnesia 目录是一个模拟器参数,我认为它不能通过 erlang 设置。另外,我认为这些是 rebar 编译代码时的选项,而不是运行 eunit 测试时的选项。但是,即使它确实有效,它对我也不起作用,因为我需要能够动态设置目录(我正在编写一个 Makefile,其中不同的目标具有不同的数据库目录)。

0 投票
2 回答
1860 浏览

testing - 如何在 Erlang 中进行单元测试覆盖

使用 Python 时,我使用 python-coverage 之类的工具测试代码覆盖率,特别是对于 django 包 djaango-nose,我正在寻找 Erlang 中的等价物。我已经用 eunit 进行了测试并用surefire生成了我的报告,但是我没有找到一种方法来进行代码覆盖,有没有人知道这样做的工具或方法?

0 投票
1 回答
766 浏览

erlang - 将 meck 与 foreach 一起使用的正确方法

我正在使用 meck 测试我的 gen_server mymodule。特别是我使用 meck按照此处httpc提供的说明进行模拟。

这是我从测试中提取的一些代码:

使用此代码,我可以运行测试,但仍有两件事我无法理解:

1)在结果中我得到类似的东西:

是否有可能每次测试只得到一条而不是两条?

2) 如何为每个测试添加口语描述?

0 投票
1 回答
2440 浏览

erlang - 确保 epmd 已启动

我有一个 eunit 测试,它生成一个唯一的节点名称并开始分发:

只要分布式 Erlang 节点在以前的某个时间在机器上运行,因此 epmd 仍在运行,但在构建服务器上,我不能假设是这种情况。

我通过将其添加到我的测试中解决了这个问题:

但感觉就像一个黑客。有没有更好/更好的方法来确保在运行之前启动 epmd net_kernel:start

0 投票
1 回答
171 浏览

erlang - EUnit 生成器的基本问题

我正在使用 EUnit 进行基本测试:

而且我基本上没有得到输出的每一行(结果失败/通过除外):

有人可以解释每一行的含义吗?