首页 > 解决方案 > maven Jacoco:如何自动增加代码覆盖率阈值

问题描述

我将JacocoMaven构建器一起用于我的项目代码覆盖率。我已经配置了关于最大错过的类/方法和最小行覆盖失败的规则,这导致 Maven 构建失败(示例如下)。

<rules>
    <rule>
        <element>BUNDLE</element>
        <limits>
            <limit>
                <counter>CLASS</counter>
                <value>MISSEDCOUNT</value>
                <maximum>90</maximum>
            </limit>
        </limits>
    </rule>
</rules>

我试图弄清楚是否有一种机制可以在添加更多测试用例时自动更新这些规则(或者使用相同的测试覆盖更多方法)。

假设我为另外 5 个类添加了测试用例,上面规则的最大值应更改为 85。

标签: javamavenjunitjacoco

解决方案


我认为您要求的实际上是棘轮支持。这通常是通过像 Jenkins 这样的持续集成系统来实现的。

目前有一张公开票(从 2014 年开始)支持在 Jenkins 为 Jacoco 进行棘轮: https ://issues.jenkins-ci.org/browse/JENKINS-22018

似乎 cobertura Jenkins 插件已经支持棘轮。所以如果你愿意,也许你可以使用它。

我不知道其他 CI 解决方案和他们的 Jacoco 插件,但我希望这可以帮助你(希望你使用 CI 系统)。


推荐阅读