【发布时间】:2021-08-23 19:05:48
【问题描述】:
我在运行createDebugCoverageReport 任务时尝试排除包,但没有成功。我试过这样的解决方案:
【问题讨论】:
标签: android android-studio testing instrumentation
我在运行createDebugCoverageReport 任务时尝试排除包,但没有成功。我试过这样的解决方案:
【问题讨论】:
标签: android android-studio testing instrumentation
由于某种原因excludes 不起作用,所以我修复了includes。这是代码,它将单元测试和仪器测试结合在一个覆盖率报告中。
task codeCoverageReport(type: JacocoReport, dependsOn: ['testDebugUnitTest', 'createDebugCoverageReport']) {
reports {
xml.enabled = true
html.enabled = true
csv.enabled = true
}
def includeFiles = [
'**/database/**/*.*',
'**/repository/**/*.*',
'**/network/worker/*.*',
'**/util/extensions/*.*'
]
def mainSrc = "${project.projectDir}/src/main/java"
classDirectories.from =
fileTree(
dir: "$buildDir/intermediates/app_classes/debug",
includes: includeFiles
) + fileTree(
dir: "$buildDir/tmp/kotlin-classes/debug",
includes: includeFiles
)
sourceDirectories.from = files([mainSrc])
executionData.from =
fileTree(dir: "$buildDir", includes: [
"jacoco/testDebugUnitTest.exec",
"outputs/code_coverage/debugAndroidTest/connected/*coverage.ec"
])
}
【讨论】: