我正在尝试在运行./gradlew test
时生成JaCoCo代码覆盖率报告。我的build.gradle
文件中包含以下内容:
apply plugin: "java" // needed by jacoco plugin
apply plugin: "jacoco"
test {
useJUnitPlatform()
}
jacoco {
toolVersion = "0.8.5"
applyTo junitPlatformTest
}
jacocoTestReport {
reports {
xml.enabled true
html.enabled true
html.destination file("${buildDir}/jacoco/jacocoHtml")
}
}
junitPlatformTest {
jacoco {
destinationFile = file("${buildDir}/jacoco/jacocoReport.exec")
}
}
每当我运行测试时,都不会生成xml或html报告。但是,JaCoCo 确实会在junitPlatformTest.exec
中生成一个{buildDir}/jacoco
文件。我怎样才能生成一些xml和html报告呢?
答案 0 :(得分:0)
JaCoCo似乎添加了一些任务,但是并没有自动将它们作为依赖项附加到测试任务。
我在build.gradle中有以下内容,可以在测试运行后生成覆盖率:
test.finalizedBy jacocoTestReport
您可以使用dependsOn而不是finalizedBy,但是如果测试失败,dependsOn不会为您提供服务。