Version control 性能+;声纳设置用于新线路代码覆盖

Version control 性能+;声纳设置用于新线路代码覆盖,version-control,perforce,sonarqube,Version Control,Perforce,Sonarqube,我只是想找出新代码行的代码覆盖率。我使用jacoco报告进行IT覆盖,并运行mvn sonar:sonar。Sonar不显示新行代码覆盖范围。 我不确定我缺少什么配置。它似乎适用于svn回购。我在基本版本上运行mvn sonar,并再次使用最新版本。 我使用的是Perforce、SonarQube 4.4、SCM活动插件1.8。 这是我的POM.xml <scm> <connection>scm:perforce:username@perforceserver:portn

我只是想找出新代码行的代码覆盖率。我使用jacoco报告进行IT覆盖,并运行mvn sonar:sonar。Sonar不显示新行代码覆盖范围。 我不确定我缺少什么配置。它似乎适用于svn回购。我在基本版本上运行mvn sonar,并再次使用最新版本。 我使用的是Perforce、SonarQube 4.4、SCM活动插件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>

scm:性能:username@perforceserver:portnumber://depot
scm:性能:username@perforceserver:portnumber://depot
scm:性能:username@perforceserver:portnumber://depot
假的
UTF-8
再利用报告
UTF-8
杰科科
C:/sonadata/ExecFiles/csmmergedata.exec
真的
JAVA
org.codehaus.mojo
声纳maven插件
${acme公司pom.SONAR版本}

为了使代码覆盖新行信息,SonarQube依赖于SCM引擎提供的信息。正如您在上所看到的,Subversion是完全受支持的,但不是performe—只有一些用户测试过Subversion,但SonarQube团队没有正式验证Subversion是否“受支持”

因此,要么:

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

    • 请参阅的“Performance的附加配置”部分
  • 或者您在Maven SCM库的实现中遇到了一个bug(我们知道有一些bug)

    • 查看此库中的所有

工具运行时是否生成日志文件?您查看过该文件吗?我检查了日志,发现以下内容:未找到SCM提供程序我正在查找指定版本和最新版本之间的覆盖率。但始终考虑最新版本进行分析,因此我猜未找到新行覆盖率我签出了特定版本和最新版本的代码进行分析。在sonar中,我深入研究了代码,发现SCM总是考虑最新的代码。我怎么能提到考虑分析的指定版本。我认为这是不可能的。