我需要暂时忽略规则“单元测试的分支覆盖率不足”(common-java:InsufficientBranchCoverage)。
阅读http://docs.sonarqube.org/display/SONAR/Frequently+Asked+Questions我看到SuppressWarnings
适用于所有规则。
但
的任何组合@SuppressWarnings("common-java:InsufficientBranchCoverage")
@SuppressWarnings("InsufficientBranchCoverage")
@SuppressWarnings("java:InsufficientBranchCoverage")
对我不起作用。
我使用Sonar 5.0,Sonar Java插件3.0。
修改
可以从声纳UI中抑制(移除)此警告。我看到两个解决方案
为我的质量配置文件禁用“单位测试的分支覆盖率不足”规则。缺点是,该规则对整个项目禁用,而不仅仅针对单个类
在浏览问题明细时将问题标记为忽略。这忽略了问题的单一发生。缺点是,需要在每个声纳项目中标记问题(我们有每个分支项目)。当我需要删除警告时,我必须再次在声纳UI中为每个项目执行此操作。
答案 0 :(得分:6)
不幸的是,这是不可能的。
InsufficientBranchCoverage
规则直接应用于文件级别,因此不会链接到文件中的任何特定行。要使用@SuppressWarnings
删除与给定规则键相关的问题,规则必须在类或方法级别应用(如文档中所述)。
请注意,为了保证分析结果的一致性,我们无法在文件级别禁用该问题,因为它可能通过隐藏本质上完全合法的问题而结束(例如{{1}的情况有多个类的文件)。