SonarQube 8.2 Анализ показывает 0 покрытия кода - PullRequest
0 голосов
/ 23 апреля 2020
  • SonarQube: 8.2.0.32929
  • сонар-сканер: 3.0.3.778
  • jacoco: 0.8.4
  • jdk: 1.8
  • mvn: 3.6.3

Что вы пытаюсь достичь

Я пытаюсь достичь покрытия кода с помощью сонара-сканера, но получаю покрытие кода 0 на панели инструментов sonarqube.

Что вы пытались сделать для этого

Я сконфигурировал мультимодульный проект java, используя https://github.com/SonarSource/sonar-scanning-examples/tree/master/sonarqube-scanner-maven/maven-multimodule

и создал файл sonar-project.properties в базовом каталоге с конфигурацией ниже

sonar.projectKey=org.sonarqube.sonarscanner-maven-aggregate
sonar.projectName=Sonar Scanner Maven Aggregate
sonar.projectVersion=1.0
sonar.language=java
sonar.java.binaries=.

Если я использую mvn sonar: sonar, это работает. но с сонар-сканером он не работает.

Он прекрасно работает с сонаркубом 7.8.

Любое понимание будет оценено.

Ответы [ 2 ]

0 голосов
/ 30 апреля 2020

Я исправил эту проблему.

во время выполнения команды sonar-scanner я добавил xmlReportPaths в качестве определяющего свойства, например sonar-scanner -Dsonar.coverage.jacoco.xmlReportPaths = tests / target / site / jacoco- агрегат / jacoco. xml, .. / тесты / цель / сайт / jacoco-заполнитель / jacoco. xml

0 голосов
/ 24 апреля 2020

Если ваши проекты настроены как многомодульные, вам нужно будет передать отчет о покрытии от каждого модуля до последнего модуля, который будет выполняться как часть сборки (возможно, модули тестирования интеграции)

https://community.sonarsource.com/t/coverage-test-data-importing-jacoco-coverage-report-in-xml-format/12151

https://community.sonarsource.com/t/in-sonarqube-8-2-code-coverage-is-always-showing-0/21666

https://docs.sonarqube.org/latest/analysis/coverage/

{ ссылка }

После шагов, упомянутых в этом примере, проект команды Sonar помог мне https://github.com/SonarSource/sonar-scanning-examples/tree/master/sonarqube-scanner-maven/maven-multimodule

Поскольку вы уже выполнили эти шаги, я упустил одну вещь: агрегированный отчет не был сгенерирован в последнем модуле, и я делал это в одном модуле до того, который был нашим модулем тестирования интеграции. Но в нашем случае был еще один модуль развертывания

...