我在Android项目中将JaCoCo 0.8.4与Gradle 5.1.1结合使用。问题在于,即使Gradle的报告显示已执行测试,JaCoCo的报告也为空。不仅如此,在“ jacoco-sessions.html”中列出了我项目中的所有类,包括Test类,但报告仍然为空。
我用于创建报告的gradle任务:
task jacocoUnitTestReport(type: JacocoReport, dependsOn: ['testDebugUnitTest']) {
buildDir = 'build'// Location of the build directory for the build Variant
def coverageSourceDirs = [
"src/main/java"
]
def fileFilter = [
'**/R.class',
'**/R$*.class',
'**/*$ViewInjector*.*',
'**/*$ViewBinder*.*',
'**/BuildConfig.*',
'**/Manifest*.*'
]
def javaClasses = fileTree(
dir: "$buildDir/intermediates/classes/debug",
excludes: fileFilter
)
classDirectories = files([ javaClasses ])
additionalSourceDirs = files(coverageSourceDirs)
sourceDirectories = files(coverageSourceDirs)
executionData = fileTree(dir: "$buildDir", includes: [
"jacoco/testDebugUnitTest.exec"
])
reports {
xml.enabled = true
html.enabled = true
}}
JaCoCo报告: index.html
已执行的测试: Test report
我是JaCoCo的新手,所以我不明白是否需要明确指定将包含在报告中的类。我想将所有测试结果都记录下来。
有什么建议吗?谢谢。