У меня есть многомодульный проект и вы хотите визуализировать покрытие кода интеграции с помощью SonarQube. Я могу генерировать test.exec и integTest.exec (JaCoCo), но есть проблема, чтобы заставить сонар-runner (sonar-jacoco-plugin) использовать их. сонар-бегун отчеты:Невозможно использовать покрытие интеграции с помощью сонара в многомодульном проекте
Охват проекта установлен на 0%, так как нет каталогов с классами.
, который является истинным как для корневого проекта (где сгенерирован файл integTest.exec), не имеет исходных файлов (но это не должно быть проблемой для покрытия интеграции). Моя конфигурация:
(...)
sonar.dynamicAnalysis=reuseReports
sonar.jacoco.reportPath=build/jacoco/test.exec
sonar.jacoco.itReportPath=build/jacoco/integTest.exec
sonar.modules=mod1,mod2
sonar.sources=src/main/java,src/main/resources
sonar.tests=src/test/java,src/test/groovy,src/test/resources
sonar.binaries=build/classes/main,build/resources/main
Проект построен с Gradle, но из-за CI ограничений, мне нужно использовать sonar-project.properties
с конфигурацией сонар-бегун (не сонар-бегун плагин от Gradle который работал для меня в прошлом).
Обновление. После анализа источников sonar-jacoco-plugin я попытался создать каталог, определенный как двоичный каталог, но, к сожалению, sonar-runner не устанавливает свойство sonar.binaries для корневого модуля вообще.
Мой вопрос. Есть ли обходной путь, который позволил бы мне использовать файл с данными об охвате интеграции в многомодульном проекте с помощью сонара?