android - 使用 JaCoCo 和 Gradle 的 espresso 测试代码覆盖率为 0%

标签 android gradle android-gradle-plugin android-espresso jacoco

在我的 Espresso 测试的 JaCoCo 代码覆盖率报告中,所有行和分支都被遗漏了。我在使用 gradle 1.5.0 构建的 Android 应用程序中使用 JaCoCo。

我的gradle配置:

apply plugin: 'jacoco'

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

jacoco {
   version '0.7.5.201505241946'
}

我关注了这篇博文:Test coverage report for Android application .

当我运行 createDebugCoverageReport 时,报告生成在正确的文件夹中 (build/reports/coverage/flavor/debug/index.html)。但是,当我打开覆盖率报告时,我的代码覆盖率在每个指令和分支上都是 0%。一切都“错过”了。

enter image description here

一开始我以为问题可能是源代码和测试代码的位置,但它们位于/src/main/java//src/androidTest/java/

有人知道如何解决这个问题吗?

最佳答案

根据我的经验,如果任何一个测试用例失败,那么我们会得到 0% 的覆盖率报告,确保您的所有测试都通过

关于android - 使用 JaCoCo 和 Gradle 的 espresso 测试代码覆盖率为 0%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35337661/

相关文章:

android - 在使用 gradle 构建特定的 Android 产品风格时,我可以排除区域资源(例如 values-fr)吗

android - RelativeLayout 中的 layout_centerInParent 不以模拟器或设备为中心

android - 如何将项目添加到 Spinner 的 ArrayAdapter?

android - 如何在android中更改holder对象的 View

gradle - 禁用 java gradle 项目中的编码检查

android - 组织.gradle.api.tasks.TaskExecutionException : Execution failed for task ':transformDexArchiveWithExternalLibsDexMergerForDebug'

java.lang.ClassNotFoundException DexPathList 。原因?

android - studio 更新后出现 Gradle 错误

android - 是否有任何支持 Android HCE 的 NFC 模块/盾牌?

java - Maven 和 Gradle 之间的 Clover 代码覆盖行为不同