Сонар не собирает результаты теста клевера, созданные при запуске maven в jenkins

Я работал над этим весь день и не смог найти решения, поэтому подумал, что обращусь к сообществу stackoverflow.

У меня есть установка сервера с Jenkins (версия 1.454). Он настроен для выполнения сборки с Maven (версия 3.0.4). Команда сборки выглядит следующим образом:

clean clover2:setup verify clover2:aggregate clover2:clover

У Дженкинса установлен и настроен плагин сонара. Моя установка сонара (версия 3) находится на другом сервере, чем jenkins. После завершения сборки я могу увидеть результаты на сонаре (основы сборки).

Я установил для сонара плагин Clover (sonar-clover-plugin-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

Следующее также есть в моем помпе:

        <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, поэтому я могу видеть там результаты!).

Я предполагаю, что на данном этапе есть проблема с тем, что дженкинс и сонар находятся на разных ящиках. Любая помощь будет оценена по достоинству!

Ваше здоровье.


person the ox    schedule 23.04.2012    source источник


Ответы (1)


После долгой возни выяснилось, что мне нужно изменить следующее:

<sonar.clover.reportPath>${project.build.directory}/site/clover/clover.xml</sonar.clover.reportPath>
    <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>

Хорошей ссылкой была следующая: все о переменных pom

person the ox    schedule 24.04.2012