Я работал над этим весь день и не смог найти решения, поэтому решил обратиться к сообществу stackoverflow.
У меня настроен сервер с Jenkins (версии 1.454 ). Он настроен для выполнения сборки с помощью Maven (версии 3.0.4 ). Команда сборки выглядит следующим образом:
clean clover2:setup verify clover2:aggregate clover2:clover
У Дженкинса установлен и настроен плагин сонара. Моя установка сонара (версии 3 )находится на сервере, отличном от сервера jenkins. После того, как сборка завершена, я могу увидеть результаты на сонаре (основы сборки ).
Я установил для сонара плагин клевера (сонар -клевер -плагин -2.8.jar )вручную, поместив его в папку «extentions/plugins». Он появился в сонаре, и я могу его настроить. Я указал лицензию, версию (3.1.4 )и путь sonar.clover.reportPath как "target\site\clover\clover.xml".
Когда я запускаю сборку, она, как и раньше, проходит успешно, и я вижу основные результаты, как и раньше, в Sonar, однако я не вижу никаких результатов покрытия кода тестами. Когда я смотрю на вывод сборки maven, я замечаю следующее :
[INFO] Writing report to '/opt/jenkins/jobs/foo/workspace/target/site/clover/clover.xml'
, а затем в нижней части вывода:
[INFO] [15:08:36.586] Clover XML report not found
Следующее также находится в моем pom:
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<sonar.clover.reportPath>target\site\clover\clover.xml</sonar.clover.reportPath>
<sonar.surefire.reportsPath>target\surefire-reports</sonar.surefire.reportsPath>
<sonar.core.codeCoveragePlugin>clover</sonar.core.codeCoveragePlugin>
<sonar.clover.version>${clover.version}</sonar.clover.version>
Когда я смотрю на ящик jenkins, я вижу, что он имеет сгенерировал файл clover.xml (фактически в моей игре. У меня есть плагин clover, работающий на jenkins, поэтому я могу видеть результаты там! ).
На данном этапе я предполагаю, что есть некоторая проблема с jenkins и сонаром, находящимися в разных коробках. Любая помощь будет оценена по достоинству!
Удачи.