Sonar没有拿起在jenkins中运行maven创建的三叶草测试结果

时间:2012-04-23 05:40:10

标签: maven jenkins sonarqube clover

我整天都在研究这个问题并且找不到解决方案,所以我想转向stackoverflow社区。

我有Jenkins的服务器设置(版本1.454)。它配置为使用Maven(版本3.0.4)执行构建。构建命令如下:

clean clover2:setup verify clover2:aggregate clover2:clover

Jenkins安装并配置了声纳插件。我的声纳安装(版本3)与jenkins位于不同的服务器上。构建完成后,我可以在声纳上看到结果(构建的基础知识)。

我已经通过将它放入'extentions / plugins'文件夹中手动安装了三叶草插件(sonar-clover-plugin-2.8.jar)。它出现在声纳中,我可以配置它。我将许可证版本(3.1.4)和sonar.clover.reportPath作为“target \ site \ clover \ clover.xml”。

当我运行构建时,它像以前一样成功,我可以像以前一样在Sonar中看到基本结果,但是,我看不到任何测试代码覆盖率结果。 当我查看maven构建输出时,我注意到以下内容:

[INFO] Writing report to '/opt/jenkins/jobs/foo/workspace/target/site/clover/clover.xml'

然后靠近输出的底部:

[INFO] [15:08:36.586] Clover XML report not found

以下内容也在我的pom中:

        <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
    <sonar.clover.reportPath>target\site\clover\clover.xml</sonar.clover.reportPath>
    <sonar.surefire.reportsPath>target\surefire-reports</sonar.surefire.reportsPath>
    <sonar.core.codeCoveragePlugin>clover</sonar.core.codeCoveragePlugin>
    <sonar.clover.version>${clover.version}</sonar.clover.version>

当我查看jenkins框时,我可以看到它已经生成了clover.xml文件(事实上,在我的小提琴中我有使用jenkins的clover插件,所以我可以在那里看到结果!)。

我在这个阶段猜测詹金斯和声纳在单独的盒子上存在一些问题。 任何帮助将不胜感激!

干杯。

1 个答案:

答案 0 :(得分:5)

经过更多的摆弄后,似乎我需要改变以下内容:

<sonar.clover.reportPath>${project.build.directory}/site/clover/clover.xml</sonar.clover.reportPath>
    <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>

一个很好的参考如下: all about pom variables