Android Studio를 사용하여 코드 커버리지를 얻는 방법은 무엇입니까?
Android Studio를 사용하여 앱을 개발 중입니다.
테스트 코드를 실행할 수있었습니다.
하지만 안드로이드 스튜디오에서 코드 커버리지를 얻는 방법을 모르겠습니다.
나는 이미 다음 링크를 보았다.
Android Gradle 코드 커버리지
하지만 emma를 지원하는 v0.6으로 업데이트되기를 기다릴 수 없습니다.
프로젝트 구성은 다음과 같습니다.
메인 코드
MyProject / AppName / src / main / java / mypackage / MyClass.java
테스트 코드
MyProject / AppName / src / instrumentTest / java / mypackage / test / MyClassTest.java
프로젝트 구성
MyProject
├─build.gradle
└─AppName
├─build.gradle
└─src
├─main
│ ├─java
│ │ └─mypackage
│ │ └─MyClass.java
│ ├─res
│ └─AndroidManifest.xml
└─AndroidManifest.xml instrumentTest
└─java
└─mypackage
└─test
└─MyClassTest.java
새로운 Android Studio 1.2를 사용하면 단위 테스트를 실행하고 IDE 내에서 모든 범위를 볼 수 있습니다.
먼저 IDE에서 단위 테스트를 실행해야합니다. (이미 가능하다면이 단계를 건너 뛰십시오)
둘째, JUnit 실행 구성을 생성해야합니다.
이 구성 내에서 선택할 수 있습니다.
- 테스트 종류 : "All in Package"
- 패키지 : [테스트가있는 패키지, 예 : "com.myapp.tests"]
- 테스트 검색 : 모듈 종속성 간 (설정에 따라 다를 수 있음)
- VM-옵션 : -ea
- 작업 디렉토리 : [프로젝트 디렉토리]
- 모드의 클래스 경로 사용 : [모듈 선택]
JUnit 실행 구성을 만드는 데 문제가있는 경우이 가이드를 방문 하여 도움을 받아야합니다.
Lastly, in the latest Android Studio, you should be able to run your JUnit-Run Configuration by clicking on the 'Run with Coverage' button.
In Android Studio 2.1.3 the is label Run Unit tests with Coverage
where Unit test
is the name of your test configuration as shown in the following screenshot:
There are so much answers showing how to apply jacoco
plugin to Android studio project, which is outdated, and wasted me so much time to figure out the solution for recently Android studio(My Android Studio is version 2.1.2).
Jacoco
plugin is built in for Android Studio gradle, what you need to do is just enable it like following:
buildTypes { ... debug { testCoverageEnabled true } }
After you do above, run unit test task
./gradlew testDebugUnitTest
Then create coverage files:
./gradlew createDebugCoverageReport
Coverage files will be created under
<module>/build/reports/coverage/debug
folder,includeindex.html
, which you can open it with browser, andreport.xml
which you can use to get a report byjenkins jacoco plugin
or other continues integration tools.
For those who got 0% coverage with jenkins jacoco plugin
, be sure to use the right version. quote from their site:
Unfortunately JaCoCo 0.7.5 breaks compatibility to previous binary formats of the jacoco.exec files. The JaCoCo plugin up to version 1.0.19 is based on JaCoCo 0.7.4, thus you cannot use this version with projects which already use JaCoCo 0.7.5 or newer. JaCoCo plugin starting with version 2.0.0 uses JaCoCo 0.7.5 and thus requires also this version to be used in your projects. Please stick to JaCoCo plugin 1.0.19 or lower if you still use JaCoCo 0.7.4 or lower
We use maven to build our app and cobertura for code coverage reporting
both are really easy to integrate
android maven integration:
http://www.vogella.com/tutorials/AndroidBuildMaven/article.html
Maven + Cobertura Code Coverage Example:
http://www.mkyong.com/qa/maven-cobertura-code-coverage-example/
I don't think you can see visual code coverage report inside Android Studio. But you could try Jacoco
. You will need to integrate it in your build.gradle
file. You can find the similar question & solution here
Have you tried using the Jacoco plugin for getting code coverage for your project? It is a good plugin giving you coverage based on your package or individual classes. I am not sure how you configure Jacoco to use with Gradle since i use Maven. Check the link: and see if it helps you
Android 스튜디오 gradle에는 코드 적용 범위를 찾는 데 사용할 수있는 Jacoco 플러그인이 내장되어 있습니다. Espresso 테스트 케이스에 대한 코드 적용 범위를 찾기 위해 jaococo를 단계별로 구성하는 기사로 작성했지만 Robotium에서도 사용할 수 있습니다. 이것 좀 봐.
http://qaautomated.blogspot.in/2016/03/how-to-find-code-coverage-with-jacoco.html
참고 URL : https://stackoverflow.com/questions/18683022/how-to-get-code-coverage-using-android-studio
'UFO ET IT' 카테고리의 다른 글
자바 동기화 목록 (0) | 2020.11.24 |
---|---|
nodejs 요청 모듈에서 리디렉션 된 URL을 어떻게 얻습니까? (0) | 2020.11.24 |
.NET에서 System.String.Copy를 사용하는 것은 무엇입니까? (0) | 2020.11.24 |
PHP에서 친숙한 URL을 만드는 방법은 무엇입니까? (0) | 2020.11.24 |
VB의 Null 검사 (0) | 2020.11.24 |