java - Sonarqube 测试覆盖过滤器 (jacoco)

标签 java ant sonarqube jacoco

此问题基于 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 任务 2.2

我错过了什么或者下一步该去哪里寻找任何想法?

最佳答案

以防万一有人偶然发现同样的问题。这是 bug在 SonarQube 4.5.4 中,已通过 4.5.5 修复

因此,只需更新基本的 SonarQube 安装(此错误与插件无关)即可解决问题。

关于java - Sonarqube 测试覆盖过滤器 (jacoco),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32566208/

相关文章:

java - 使模块的 xml 层对其他模块可见

java |移出边界索引,直到它在边界内

运行Ant时出现Java问题: noclassdef

java - Eclipse ANT 构建错误

java - 使用 Ant 复制文件名中随机生成的字符串的临时文件

eclipse - 如何在Windows 7中为 Sonar (eclipse)创建环境变量SONAR_RUNNER_HOME

java - tomcat中的阻塞与非阻塞主线程

java - 在运行时查找包中的所有类(并调用静态方法)

java - 如何从基于 gradle 的项目中检索 Sonar 项目属性

gradle - 找不到方法sonarProperties()