gradle 多模块 jacoco
时间: 2023-11-21 17:10:51 浏览: 146
Jacoco是一个覆盖率测试工具,Gradle是一个构建工具,两者结合可以实现多模块的Jacoco测试覆盖率。
首先,在根目录的build.gradle文件中添加Jacoco插件:
```groovy
plugins {
id 'jacoco'
}
```
然后,在每个子模块的build.gradle文件中,配置Jacoco插件和测试任务:
```groovy
plugins {
id 'java'
id 'jacoco'
}
jacoco {
toolVersion = "0.8.6"
}
test {
jacoco {
append = true
destinationFile = file("$buildDir/jacoco/jacoco.exec")
}
}
jacocoTestReport {
dependsOn test
reports {
xml.enabled = true
html.enabled = true
csv.enabled = false
jacocoModel {
xml.enabled false
csv.enabled = true
}
}
}
```
其中,jacocoTestReport任务会生成测试覆盖率报告,依赖于test任务,因此需要先运行test任务。
最后,在根目录的build.gradle文件中添加如下代码,配置所有子模块的Jacoco测试覆盖率报告:
```groovy
subprojects {
apply plugin: 'jacoco'
jacoco {
toolVersion = "0.8.6"
}
jacocoTestReport {
reports {
html.enabled = true
xml.enabled = true
}
}
}
```
这样就可以在根目录下运行如下命令,生成所有子模块的Jacoco测试覆盖率报告:
```
./gradlew clean build jacocoTestReport
```
阅读全文