如何配置 SonarQube 让我们增加覆盖范围?
Posted
技术标签:
【中文标题】如何配置 SonarQube 让我们增加覆盖范围?【英文标题】:How to configure SonarQube to make us increase the coverage? 【发布时间】:2016-03-06 17:57:18 【问题描述】:为了激励自己增加单元测试的代码覆盖率,我们为覆盖率定义了以下规则:
-
整体代码覆盖率必须 > 80%
整体代码覆盖率不得少于上次
新代码的代码覆盖率必须 > 90%
为了满足规则 1 和 2,我使用以下条件配置了质量门:
“覆盖率-值-小于-80” “覆盖率 - 自上次分析以来的增量 - 小于 - 0”对于规则 3,我认为满足以下条件:“新代码的覆盖率 - 值 - 小于 - 90”。但是不可能为这个条件选择一个值,只能选择一个增量。这里的 delta 是什么意思?新代码不应该有增量,因为它是新的。我必须如何配置条件才能满足规则 3?
【问题讨论】:
我将回答您最初的问题(“如何配置 sonarqube 以使我们增加覆盖范围?”),请在 Google 群组 (groups.google.com/forum/#!forum/sonarqube) 上提问似乎是一个错误. 【参考方案1】:默认情况下,SonarQube 带有一个预定义的质量门,旨在完全实现您想要的:逐步提高您的代码覆盖率。
你可以看看这个"SonarQube way" quality gate on Nemo。
重要的行是屏幕截图中突出显示的行。这意味着:“从当前版本开始开发以来引入的代码必须至少覆盖 80%”。如果你承认你一直在重构和重写部分代码,那么最终你的代码将被覆盖至少 80%。
【讨论】:
以上是关于如何配置 SonarQube 让我们增加覆盖范围?的主要内容,如果未能解决你的问题,请参考以下文章
如何将未覆盖的文件视为具有SonarQube通用覆盖XML的0覆盖?