gradle - JaCoCo Gradle 插件不生成 xml 或 html 报告
问题描述
我试图在运行时生成 JaCoCo 代码覆盖率报告./gradlew test
。我的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 报告呢?
解决方案
JaCoCo 似乎添加了一些任务,但不会自动将它们作为依赖项附加到测试任务。
我在 build.gradle 中进行了以下操作,以在测试运行后生成覆盖率:
test.finalizedBy jacocoTestReport
您可以使用 dependsOn 而不是 finalizedBy 但如果测试失败,dependsOn 不会为您提供覆盖范围。
推荐阅读
- java - 选择“作为 java 应用程序运行”导致“找不到类”后,Eclipse 在类路径中显示错误的工作区目录
- jquery - 使用循环创建多个表的 Tabledit
- python - 在一个文件中导入 Openpyxl 有效,但在另一个文件中出现 ModuleNotFoundError
- sockets - SFML 套接字,返回“断开连接”的 UDP 套接字是什么意思?
- c - C 中的 : 标记是什么意思?
- .net - 如何在 VB 中查找带有特殊字符的文件(如 MySQL 一样)?
- sql - 解析 Json 响应并插入到 oracle
- javascript - 浏览器中的 Ascii 艺术动画
- maven - 如何在 filevault-package-maven-plugin 中使用钩子
- python - tkinter 值错误:id 必须是从 after 或 after_idle 返回的有效标识符