2013-01-20 4 views
2

I 사용자 철근은 "EUNIT을 컴파일 철근"명령으로 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 :

-ifdef(TEST). 

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

-endif. 

........ 

-ifdef(TEST). 

simple_test() -> 

    ok = application:start(myapp), 

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

-endif. 

를 그리고 여기에서 나온 것 : 내 영어는 가난, 같은 날

myapp_app.erl를 용서해주십시오 https://github.com/rebar/rebar/wiki/Getting-started

을 나는 단계를 수행하지만 얻었다 오류! OS X 라이온

+0

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

을 변경? 또는 적어도 8 행, 문제의 include_lib. – chops

+0

감사합니다! myapp_app.erl의 텍스트를 추가합니다. –

+0

감사합니다. 덕분에 도움이되었습니다. 나는 대답을 게시했다. – chops

답변

0

제시 한 코드에 따르면, 문제는 사용중인 이중 따옴표와 관련이 있다고 생각합니다. 지금 당장 당신은 어떤 종류의 기울어 진 따옴표를 사용하고 있습니다. 나는 그것을 복사하여 붙여 넣기하고 테스트 모듈에서 같은 정의를 사용하면 같은 오류가 발생합니다. 유니 코드 인,

" (ASCII 34) 대신 의 :

당신은 당신이 "정상"사람을 사용하여 쌍 따옴표를 위해 있는지 확인하려면.

그래서 당신이 myapp_app.erl의 텍스트를 게시 할 수

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

고마워요! 너무 부주의했습니다. 문제가 해결되었습니다. –

+0

대단히 환영합니다. 도움이 된 것을 기쁘게 생각합니다. – chops

0

다음과 같은 방법으로 EUNIT 포함해야합니다 :

내 얼랑 버전

OS R15B03

입니다

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

전혀 EUNIT을 설치해야합니다 말할 필요도없이, . 지금까지 나는 일부 Ubuntu 버전에서 기본적으로 설치되지 않을 수도 있음을 기억합니다.

+0

감사합니다. 내가 haven eunit.hrl 포함, 그리고 myapp_app.erl의 텍스트를 추가! –