0
我的目标很简单,而我学习二郎,我想用螺纹钢创建具有eunit测试的基本模块:如何使用钢筋来创建erun模块并进行eunit测试?
我曾尝试以下:
mkdir erlangscratch
cd erlangscratch
rebar create template=simplemod modid=erlangscratch
编辑“测试/ erlangscratch_tests.erl”看像这样:
-module(erlangscratch_tests).
-include_lib("eunit/include/eunit.hrl").
% This should fail
basic_test_() ->
?assert(1 =:= 2).
执行测试:
[email protected]:~/erlangscratch$ rebar co eu
==> erlangscratch (compile)
==> erlangscratch (eunit)
测试并没有执行,但它似乎也没有编译代码。
这里是我的文件夹的内容:
[email protected]:~/erlangscratch$ tree .
.
├── src
│ └── erlangscratch.erl
└── test
└── erlangscratch_tests.erl
2 directories, 2 files
问:什么步骤(S)我已经错过了?
UPDATE:
按照公认的答案,需要将改名为basic_test_
功能和“SRC/erlangscratch.app.src”不见了,所以我用下面的内容创建它:
{application, erlangscratch,
[
{description, "An Erlang erlangscratch library"},
{vsn, "1"},
{modules, [
erlangscratch
]},
{registered, []},
{applications, [
kernel,
stdlib
]},
{env, []}
]}.
感谢您的回答 - 不幸的是,在'basic_test _()'中移除'_'后,运行'rebar co eu'仍然会得到相同的结果。我还提供了我的问题的更新,以显示我的工作文件夹的内容。 – 2014-11-24 12:53:41
使用'simplelib'钢筋模板而不是'simplemod',因为后者不会创建.app.src文件,没有该钢筋就不会编译任何东西。运行'rebar create template = simplelib libid = erlangscratch'来代替,假设你已经有'basic_test'而不是'basic_test_',它就会像你期望的那样工作。 – 2014-11-24 14:07:17