我正在尝试生成jacoco报告,但当我将testCoverageEnabled属性设置为true时,我不断收到错误消息。启用覆盖时,为什么Android Instrumentation测试报告失败?
java.lang.NoSuchMethodError: No static method $jacocoInit()[Z in class L...
卸下testCoverageEnabled财产我可以运行测试,但我不能生成报告。
我使用标准的Jacoco配置。单独运行时单元测试和集成测试运行正常。
对此问题的所有在线引用似乎都是项目中的特定配置问题。任何帮助表示赞赏。
更新
apply plugin: 'jacoco'
task jacocoTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'createDebugCoverageReport']) {
reports {
xml.enabled = true
html.enabled = true
}
def fileFilter = ['**/R.class', '**/R$*.class', '**/BuildConfig.*', '**/Manifest*.*', '**/*Test*.*', 'android/**/*.*']
def debugTree = fileTree(dir: "${buildDir}/intermediates/classes/debug", excludes: fileFilter)
def mainSrc = "${project.projectDir}/src/main/java"
sourceDirectories = files([mainSrc])
classDirectories = files([debugTree])
executionData = fileTree(dir: "$buildDir", includes: [
"jacoco/testDebugUnitTest.exec",
"outputs/code-coverage/connected/*coverage.ec"
])
}
你能告诉你的jacoco配置? – Artyom
@Artyom,更新在 – abs
你使用什么工具版本? – Artyom