Android 升级到AGP 4.2.0,无法生成Jacoco代码覆盖率报告

Android 升级到AGP 4.2.0,无法生成Jacoco代码覆盖率报告,android,android-gradle-plugin,jacoco,gradle-kotlin-dsl,jacoco-plugin,Android,Android Gradle Plugin,Jacoco,Gradle Kotlin Dsl,Jacoco Plugin,Jacoco代码覆盖率一直运行良好,直到我将Android Gradle插件升级到4.2.0,不仅生成了应用程序模块代码覆盖率,而且模块代码覆盖率也不工作。 你知道如何解决这个问题吗。升级到4.2.1后,我也遇到了同样的问题 看起来未插入指令的单元测试的Jacoco执行数据文件已重命名为“Jacoco.exec”,并移动到模块的顶级目录 在我的JacoReport gradle任务的配置中,这对我很有用: executionData.from = "${project.projectD

Jacoco代码覆盖率一直运行良好,直到我将Android Gradle插件升级到4.2.0,不仅生成了应用程序模块代码覆盖率,而且模块代码覆盖率也不工作。
你知道如何解决这个问题吗。

升级到4.2.1后,我也遇到了同样的问题

看起来未插入指令的单元测试的Jacoco执行数据文件已重命名为“Jacoco.exec”,并移动到模块的顶级目录

在我的JacoReport gradle任务的配置中,这对我很有用:

executionData.from = "${project.projectDir}/jacoco.exec"
注意:插入指令的
测试的执行数据文件尚未重命名或移动。

基于惊人的Richard,如果您以前有过此设置(这对于Android中使用Jacoco的单元测试和插入指令的测试来说是非常标准的)

对于AGP4.2.X,您可以切换到此等效项

executionData.from = files([
  "$project.projectDir/jacoco.exec",
  fileTree(dir: project.buildDir, includes: [
    "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"
  ])
])