【发布时间】:2015-12-10 12:54:29
【问题描述】:
这个问题基于Sonar-Cobertura custom filters,但因为这是关于 Cobertura 而我的问题是关于 jacoco,我认为一个新问题会更好。
现在我有时间测试建议的属性,我必须说它似乎没有按预期工作。我想从测试覆盖率报告中排除“命令”包中的所有内容(因为这些内容将在系统测试中进行测试,而不是在正常的夜间构建中进行测试)。所以我在我的 ant 构建中设置了 sonar.coverage.exclusions 属性。输出看起来不错:
[sonar:sonar] 15:04:50.223 INFO - Excluded sources for coverage:
[sonar:sonar] 15:04:50.223 INFO - src/main/java/**/command/*.java
但项目仪表板没有改变。所有命令类仍然以 0% 的覆盖率列出(整体覆盖率没有增加)。我什至仔细检查了一个项目,其中一些命令具有覆盖范围,并且这些命令仍然以与没有属性集时相同的百分比列出。
在 Sonarqube 实例或项目中手动设置属性也不起作用。
这里是使用的组件:
- Sonarqube 4.5.4 (LTS)
- java-plugin 3.3
- 测试覆盖工具 jacoco
- java 1.6 中的源代码
- ant 1.9.6(使用 java 8 运行)
- sonar-ant-tasks 2.2
任何想法我错过了什么或下一步看哪里?
【问题讨论】:
-
您能否使用以下排除模式重新尝试一下:
**/command/*.java
-
我试试不带
标签,还是你的意思是要包含它们?
-
[sonar:sonar] 10:38:44.168 INFO - Excluded sources for coverage: [sonar:sonar] 10:38:44.168 INFO - **/command/*.java但包/源仍然以 0% 的覆盖率列出