Анализ SonarQube 8.2 показывает 0 покрытия кода

  • SonarQube: 8.2.0.32929
  • сонар-сканер: 3.0.3.778
  • жакоко: 0.8.4
  • jdk: 1.8
  • мвн: 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, он работает. но с сонар-сканером не работает.

Он отлично работает с sonarqube 7.8.

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


person saurabh landge    schedule 23.04.2020    source источник
comment
Я не знаю, связано ли это. Мне пришлось выполнить некоторую настройку плагина jacoco в pom.xml с целью подготовки агента, и я думаю, что до этого я видел 0 покрытия кода, но это было больше года назад, jacoco 0.8.2, и это не был многомодульным проектом.   -  person David Conrad    schedule 23.04.2020
comment
Я сталкиваюсь с этим для многомодульного проекта. Для одного модуля работает нормально.   -  person saurabh landge    schedule 23.04.2020


Ответы (2)


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

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/

https://stackoverflow.com/a/15535970

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

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

person Sardar Mohammed    schedule 24.04.2020
comment
Он способен агрегировать все отчеты из всех модулей в 1 модуль. mvn sonar: цель сонара также показывает покрытие. Но я хочу сделать это с помощью сонарного сканера, который не работает. - person saurabh landge; 24.04.2020

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

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

person saurabh landge    schedule 30.04.2020
comment
@saurabhkandge, не могли бы вы вставить полную команду, которую вы использовали в командной строке? Я тоже сталкиваюсь с той же проблемой - person Dashrath Mundkar; 25.06.2020