Jacoco 代码覆盖率功能在我升级 Android Gradle Plugin 到4.2.0 后出现了问题,只有应用程序模块的代码覆盖率被生成,对于其他模块则不起作用。有任何解决此问题的想法吗?
Jacoco 代码覆盖率功能在我升级 Android Gradle Plugin 到4.2.0 后出现了问题,只有应用程序模块的代码覆盖率被生成,对于其他模块则不起作用。有任何解决此问题的想法吗?
我在升级到4.2.1版本后也遇到了同样的问题。
看起来非插桩单元测试的Jacoco执行数据文件已经被重命名为“jacoco.exec”,并移动到模块的顶层目录中。
在我的JacocoReport gradle任务配置中,以下设置对我有用:
executionData.from = "${project.projectDir}/jacoco.exec"
注意:被instrumented
测试所生成的执行数据文件没有被重命名或移动。
根据Richard惊人的回答,如果您之前使用了这个设置(对于Android中的单元测试和仪器化测试来说是非常标准的),
executionData.from = fileTree(dir: project.buildDir, includes: [
"jacoco/${testTaskName}.exec",
"outputs/code_coverage/${variantName}AndroidTest/connected/**/*.ec"
])
executionData.from = files([
"$project.projectDir/jacoco.exec",
fileTree(dir: project.buildDir, includes: [
"outputs/code_coverage/${variantName}AndroidTest/connected/**/*.ec"
])
])