2012-12-05 4 views
4

저는 외부 Jar가 포함 된 안드로이드 프로젝트의 코드 커버리지 보고서를 추론 해보기 위해 지난 1 개월 동안 노력해 왔습니다. (ADT20을 실행 중입니다). 나는안드로이드 외부 API 커버리지가 나오지 않습니다.

개미 엠마 디버그 테스트

그것은 내 안드로이드 프로젝트에 대한 100 %의 범위를 표시하지만 커버리지 보고서 내 외부 항아리의 패키지와 클래스를 포함하지 않는 설치 실행 때마다. 어느 누구라도 Emma ant build 또는 Android 코드 커버리지 도구를 통해 외부 Jars의 패키지 및 클래스에 대한 적용 범위 보고서를 얻을 수 있습니다. 최신 SDK 빌드 앞에 엠마을 넣어 엠마를 사용

감사

+0

내 외부의 패키지를 얻기에 성공적인했다 내 코드 커버리지 보고서에 jar 파일이 있지만 여전히 jar 패키지 및 클래스의 공격률은 0 %입니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? –

답변

2

:

ant emma debug install 
ant emma debug install test 

프로젝트 디렉터에서 실행되는 첫 번째, 두 번째 테스트 디렉토리. 이렇게하면 전체 범위 보고서가 생성됩니다.

http://tools.android.com/download/adt-20-preview

이 당신에게 줄 것이다 :

자세한 내용은이 link

ADT R20-미리보기가 전체 테스트 프로젝트의 클래스 경로와 그 도서관 프로젝트에 대한 액세스를 제공하여이 문제를 해결 참조 라이브러리 프로젝트에 대한 코드 적용 범위 보고서를 작성하지만 소스 파일도 첨부하려면 build.xml의 테스트 대상을 일부 수정해야합니다.

당분간 귀하의 도서관 프로젝트에 대한 emma 테스트 커버리지를 통합하는 방법에 대한 자세한 내용은 this Attach Android library Emma 보고서 (ant, emma)의 프로젝트 소스 코드를 참조하십시오.

예-build.xml 파일 :

<emma> 
       <!-- Grantland: Attach Android library project sources to the emma report --> 
       <report sourcepath="${tested.project.absolute.dir}/${source.dir};${tested.android.library.source.dir}" 
            verbosity="${verbosity}"> 
       <!-- <report sourcepath="${tested.project.absolute.dir}/${source.dir}" 
            verbosity="${verbosity}"> --> 
        <!-- TODO: report.dir or something like should be introduced if necessary --> 
        <infileset dir="."> 
         <include name="coverage.ec" /> 
         <include name="coverage.em" /> 
        </infileset> 
        <!-- TODO: reports in other, indicated by user formats --> 
        <html outfile="coverage.html" /> 
       </report> 
      </emma> 

ant.properties :

이 할 수있을 디렉토리를 세미콜론으로 구분 된 목록

tested.android.library.source.dir=../library/src;etc 
+0

위의 단계를 수행했지만 그 결과는 이전과 같습니다. Coverage.html 보고서에는 내 응용 프로그램의 패키지 만 포함되어 있지만 주 프로젝트의 패키지 sof 외부 항아리는 보고서에 포함되어 있지 않습니다. 주 프로젝트에 추가 된 jar에 대한 커버리지 리포트를 어떻게 얻을 수 있습니까? –

+0

@see updated 대답 –

+0

나는 또한 위의 변경 시도했지만 build.xml 및 ant.properties file.My 병 내 항아리에 경로를 정확하게 추가하는 방법에 대한 명확하지 않은 주 프로젝트의 libs 폴더에 있습니다. –

관련 문제