gpt4 book ai didi

java - 如何在 gradle 中将 jacoco 代码覆盖级别设置为模块

转载 作者:搜寻专家 更新时间:2023-10-30 21:34:40 30 4
gpt4 key购买 nike

我将 gradle 4.3.1 与 jacoco 插件一起使用,我能够确保在多模块项目中达到一定程度的代码覆盖率。当我将 element 设置为 CLASSPACAKAGE 时效果很好,但我不知道如何让它对模块起作用。

寻找 here我想我想要的是 BUNDLEGROUP,但是当我低于覆盖范围时 jacoco 不会中断。

这是我所拥有的可用于执行包级覆盖范围的示例:

jacocoTestCoverageVerification {
violationRules {
rule {
// should be element = 'BUNDLE' or 'GROUP'?
element = 'PACKAGE'

limit {
minimum = 0.9
}
includes = ['com.mypackage.*']
}
}
}

当我将元素值更改为 BUNDLE 时,无论覆盖范围如何,构建都不会失败。我再次希望能够在模块级别控制期望。

这是我的gradle版本信息:

------------------------------------------------------------
Gradle 4.3.1
------------------------------------------------------------

Build time: 2017-11-08 08:59:45 UTC
Revision: e4f4804807ef7c2829da51877861ff06e07e006d

Groovy: 2.4.12
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_40 (Oracle Corporation 25.40-b25)
OS: Windows 8.1 6.3 amd64

我猜我遗漏了一些非常简单的东西,因为我认为我不是第一个尝试这样做的人。任何帮助将不胜感激!

最佳答案

我不是很确定,但你可以尝试在限制内添加 counter='LINE' 吗?

rule {
element = 'GROUP'

limit {
minimum = 0.9
counter = 'LINE'
}
...

除此之外,还尝试添加 jacocoTestReport 以生成测试报告以验证您的结果,仅用于内部测试目的。

jacocoTestReport {
reports {
xml.enabled false
csv.enabled false
html.destination file("${buildDir}/jacocoHtml")
}
}

来源:https://docs.gradle.org/current/userguide/jacoco_plugin.html#sec:jacoco_report_configuration

关于java - 如何在 gradle 中将 jacoco 代码覆盖级别设置为模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47943423/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com