我有一个带有 Java、Scala 的 SBT 项目,并且在 SBT 构建后与 Jenkins 集成进行 Sonar 扫描。分析成功后,我看不到百分比的代码覆盖率和单元测试覆盖率。

“sbt clean compile test”后的项目结构如下:

le-adaptor
      src->main/java/.. ,main/scala/.. , test/scala/..
      target->classes,test-classes,test-reports
le-ui
      src->main/java/.. ,test/scala/..
      target->classes,test-classes,test-reports
build.sbt

我的 sonar-project.properties 文件如下:
sonar.projectKey=MyProject
sonar.projectName=my sbt project
sonar.projectVersion=0.1.0.0-SNAPSHOT
sonar.languages=java,scala
sonar.modules=le-adaptor,le-ui

le-adaptor.sonar.binaries=target/classes
le-adaptor.sonar.sources=src/main/java,src/main/scala
le-adaptor.sonar.tests=src/test/scala
le-adaptor.sonar.junit.reportsPath=target/test-reports

le-ui.sonar.binaries=target/classes
le-ui.sonar.sources=src/main/java
le-ui.sonar.tests=src/test/scala
le-ui.sonar.junit.reportsPath=target/test-reports

Sonar 版本为 4.3.2,安装的插件为:
Checkstyle  2.1.1
Clover  3.0
Cobertura   1.6.3
Fortify 1.0
Generic Coverage    1.1
JMeter  0.3
Java    2.5.1
JavaScript  2.1
LDAP    1.2.1
PMD 2.2
Quality Index   1.1.3
SCM Activity    1.5
Scalastyle  0.0.1-SNAPSHOT
Technical Debt  1.2.1
Total Quality   1.1
Toxicity Chart  0.1
Useless Code Tracker    0.5
Violation Density

当我去 http://localhost:9000/dashboard/index/MyProject 时,我看不到百分比代码覆盖率和单元测试覆盖率。

我在这里缺少什么?任何帮助,将不胜感激。

最佳答案

Sonar 的 Scalastyle 插件也不适合我。

对我有用的最新鲜、最维护的 SonarQube 插件是 sonar-scala 。它目前支持 Sonar 6.7.1 LTS 及更高版本。

如果您有 Sonar 5.4 左右,请按照此 instruction 了解如何添加 SCoverage 插件。

关于jenkins - 如何让 SonarQube 分析 SBT 项目(使用 Java 和 Scala)并导入代码覆盖率和单元测试覆盖率?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32016706/

10-13 22:46