我有一个带有 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/