我的JUnit测试覆盖率在jenkins上构建时不会传播到声纳。声纳上的“单元测试覆盖率”字段保持为空,但“单元测试成功”字段显示了正确的值。我正在使用jacoco进行测试覆盖。在jenkins上,jacoco的报告运行良好,并在生成的html中显示了正确的覆盖范围。我就是拿不到声纳。
使用jenkins的jacoco插件,我使用以下参数调用一个独立的Sonar Analysis。
# required metadata
sonar.projectKey=ePortal:Ejb
sonar.projectName=ePortal
sonar.projectVersion=1.0
# path to source directories (required)
sonar.sources=ePortalEjb/ejbModule
# path to test source directories (optional)
sonar.tests=ePortalEjb/src/test
sonar.core.codeCoveragePlugin=jacoco
sonar.surefire.reportsPath=ePortalEjb/junit
sonar.forceAnalysis=true
sonar.jacoco.reportPath=ePortalEjb/build_test/jacoco/jacoco.exec
sonar.dynamicAnalysis=reuseReports
sonar.jacoco.antTargets=test路径和ant-task是正确的。也许我漏掉了一些明显的东西?提前感谢您的帮助。
问候Redmo
发布于 2013-05-20 15:59:21
由于您不是使用Ant而是Sonar Runner触发声纳分析,您可以从项目配置文件中删除'sonar.jacoco.antTargets‘属性吗?
在声纳分析之前,您是否确认JaCoCo报告已生成并转储到ePortalEjb/build_test/jacoco/jacoco.exec?
您运行的是哪个版本的Sonar?
您能在调试模式(-X)中提供分析日志吗?您是否可以在Jenkins之外运行相同的分析,并确认您遇到了相同的问题?
谢谢
David RACODON | SonarSource
https://stackoverflow.com/questions/16565005
复制相似问题