我需要临时忽略规则“单元测试的分支覆盖不足”(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中为每个项目执行此操作.
解决方法:
不幸的是,这是不可能的.
InsufficientBranchCoverage规则直接应用于文件级别,因此不会链接到文件中的任何特定行.要使用@SuppressWarnings删除与给定规则键相关的问题,规则必须在类或方法级别应用(您可以在文档中阅读).
请注意,为了保证分析结果的一致性,我们无法在文件级别禁用该问题,因为它可能通过隐藏本质上完全合法的问题而结束(例如,具有多个类的java文件的情况).