Dev*_*oni 3 android jacoco android-gradle-plugin gradle-kotlin-dsl jacoco-plugin
Jacoco代码覆盖率运行良好,直到我将Android Gradle 插件升级到4.2.0,不仅生成了应用程序模块代码覆盖率,对于模块它也不起作用。任何想法如何解决这个问题。
升级到 4.2.1 后我遇到了同样的问题。
看起来非检测单元测试的 Jacoco 执行数据文件已重命名为“jacoco.exec”,并移动到模块的顶级目录。
在我的 JacocoReport gradle 任务的配置中,这对我有用:
executionData.from = "${project.projectDir}/jacoco.exec"
Run Code Online (Sandbox Code Playgroud)
注意:仪器测试的执行数据文件尚未重命名或移动。
基于令人惊叹的理查德答案,如果您以前有过这个设置(这对于 Android 中的 Jacoco 进行单元和仪器测试来说是相当标准的)
executionData.from = fileTree(dir: project.buildDir, includes: [
"jacoco/${testTaskName}.exec",
"outputs/code_coverage/${variantName}AndroidTest/connected/**/*.ec"
])
Run Code Online (Sandbox Code Playgroud)
您可以切换到 AGP 4.2.X 的等效版本
executionData.from = files([
"$project.projectDir/jacoco.exec",
fileTree(dir: project.buildDir, includes: [
"outputs/code_coverage/${variantName}AndroidTest/connected/**/*.ec"
])
])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
395 次 |
| 最近记录: |