rebar编译eunit错误

时间:2013-01-20 16:24:29

标签: erlang rebar eunit

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

==> myapp (compile)

==> myapp (eunit)

src/myapp_app.erl:8: badly formed 'include_lib'

src/myapp_app.erl:26: undefined macro 'assertNot/1'

ERROR: eunit failed while processing /Users/Dao/ErlProject/myapp: rebar_abort

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

PS:我的英语很差,请原谅我

像这样的

myapp_app.erl:

-ifdef(TEST).

-include_lib(“eunit/include/eunit.hrl”).

-endif.

........

-ifdef(TEST).

 simple_test() ->

  ok = application:start(myapp),

  ?assertNot(undefined == whereis(myapp_sup)).

-endif.

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

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

我的erlang版本是R15B03

os:OS X Lion

2 个答案:

答案 0 :(得分:0)

确保以下列方式包含eunit:

-include_lib("eunit/include/eunit.hrl").

毋庸置疑,请确保您安装了eunit。到目前为止,我记得,默认情况下,某些Ubuntu版本可能没有安装,例如。

答案 1 :(得分:0)

根据您提供的代码,我认为问题与您正在使用的双引号有关。现在,你正在使用某种倾斜的引号,如果我复制并粘贴它并在测试模块中自己使用相同的定义,它会产生相同的错误。

您希望确保使用“正常”的双引号:

"(ASCII 34)代替,即unicode。

所以改变

-include_lib(“eunit/include/eunit.hrl”).

-include_lib("eunit/include/eunit.hrl").