26

我曾经使用 Robotium 编写 Android 测试并使用 Emma 检索覆盖率。

最近我改用 Espresso 测试,但在检索 Instrumentation 测试的覆盖率时遇到了麻烦。我只能检索使用 Robolectric 的单元测试的覆盖率。我目前正在使用 gradle 和 Jacoco 来做到这一点。我发现帮助我达到这一点的最佳教程是:https ://blog.gouline.net/2015/06/23/code-coverage-on-android-with-jacoco/

是否可以检索使用 Android 仪器的 Espresso 测试的覆盖范围?

4

1 回答 1

38

android gradle 插件有一个内置功能。

只需在文件中设置testCoverageEnabled参数:truebuild.gradle

android {
   buildTypes {
      debug {
         testCoverageEnabled = true
      }
   }
}

然后使用:

./gradlew connectedCheck

或者

./gradlew createDebugCoverageReport

它将在模块目录中生成测试覆盖率报告:

/build/outputs/reports/coverage/debug/

只需打开index.html

例子:

在此处输入图像描述

于 2015-11-02T21:17:49.733 回答