我的目标很简单;在学习 Erlang 时,我想使用 rebar 创建一个带有 eunit 测试的基本模块:
我尝试了以下方法:
mkdir erlangscratch
cd erlangscratch
rebar create template=simplemod modid=erlangscratch
编辑 'test/erlangscratch_tests.erl' 看起来像这样:
-module(erlangscratch_tests).
-include_lib("eunit/include/eunit.hrl").
% This should fail
basic_test_() ->
?assert(1 =:= 2).
执行测试:
snowch@tp:~/erlangscratch$ rebar co eu
==> erlangscratch (compile)
==> erlangscratch (eunit)
测试没有执行,但代码似乎也没有编译。
这是我的文件夹的内容:
snowch@tp:~/erlangscratch$ tree .
.
├── src
│ └── erlangscratch.erl
└── test
└── erlangscratch_tests.erl
2 directories, 2 files
问题:我错过了哪些步骤?
更新:
根据接受的答案,basic_test_
需要重命名函数并且缺少“src/erlangscratch.app.src”,因此我使用以下内容创建了它:
{application, erlangscratch,
[
{description, "An Erlang erlangscratch library"},
{vsn, "1"},
{modules, [
erlangscratch
]},
{registered, []},
{applications, [
kernel,
stdlib
]},
{env, []}
]}.