我需要生成我的测试覆盖率的csv文件。目前,我已经尝试了2种方法。
我从here获得的第一种方式是在我的应用程序gradle文件中:
android {
...
jacoco {
version = '0.7.9'
}
...
buildTypes {
...
debug {
minifyEnabled false
testCoverageEnabled true
}
}
}
然后我只运行./gradlew createDebugCoverageReport
,它可以工作并给我期望的结果,但是它只生成html报告,我需要一个csv。
我尝试从here和here获得的另一种方法是将其添加到应用程序gradle中:
apply plugin: 'jacoco'
...
task jacocoTestReport(type: JacocoReport, dependsOn: 'testDebugUnitTest') {
reports {
xml.enabled = true
html.enabled = true
csv.enabled = true
}
def fileFilter = ['**/R.class']
def debugTree = fileTree(dir: "${buildDir}/intermediates/javac/debug/compileDebugJavaWithJavac/classes", excludes: fileFilter)
def mainSrc = "src/main/java"
sourceDirectories = files([mainSrc])
classDirectories = files([debugTree])
executionData = files("${buildDir}/jacoco/testDebugUnitTest.exec")
}
然后我用./gradlew clean jacocoTestReport
当我以这种方式执行此操作时,我得到了csv,但是该报告缺少我的大多数应用程序类,并说所有内容的覆盖率均为0(这是不正确的,并且没有通过我做的第一种方法的测试覆盖率反映出来)它)
有什么我想念的吗?如何以我做的第一种方式获得结果,但以csv格式?