Perforce + Sonar设置新线代码覆盖率

时间:2014-10-12 08:39:40

标签: version-control perforce sonarqube

我试图仅在新行上找到代码覆盖率。我使用jacoco报告进行IT覆盖并运行mvn声纳:声纳。声纳不显示新的线路代码覆盖范围。 我不确定我缺少什么配置。它似乎适用于svn repo。我在基础版本上运行mvn sonar,并再次使用最新版本。 我正在使用Perforce,SonarQube 4.4,SCM Activity Plugin 1.8。 这是我的POM.xml,

<scm>
<connection>scm:perforce:username@perforceserver:portnumber://depot</connection>
<developerConnection>scm:perforce:username@perforceserver:portnumber://depot</developerConnection>
<url>scm:perforce:username@perforceserver:portnumber://depot</url>
</scm>
<properties>
<skipTests>false</skipTests>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
<sonar.jacoco.itReportPath>C:/SonarData/ExecFiles/CSMmergeddata.exec</sonar.jacoco.itReportPath>
<sonar.scm.reloadBlame>true</sonar.scm.reloadBlame>
<sonar.language>java</sonar.language>
</properties> 
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>${acme-corporate-pom.sonarVersion}</version>
</plugin>

...

1 个答案:

答案 0 :(得分:1)

为了对新线路信息进行代码覆盖,SonarQube依赖于来自SCM引擎的信息。正如您在SCM Activity plugin matrix上看到的那样,Subversion得到了完美的支持,但不是Perforce - 只知道某些用户会对其进行测试,但SonarQube团队未对其进行正式验证为“支持”。

所以:

  • 您的SCM活动插件配置不正确

  • 或者您在Maven SCM库的实现中遇到了一个错误(我们知道存在一些错误)