1

В моей компании мы разрабатываем плагины eclipse, которые постоянно создаются сервером Jenkins CI (с tycho & maven), который также выполняет тесты (Unit Tests и SWTBot Tests). В качестве действия post build мы отправляем тестовые данные (JaCoCo & Surefire) с помощью maven на сервер SonarQube для анализа. Наши источники и тесты расположены в собственном модуле.Управление несколькими отчетами Surefire с помощью Sonarqube/Jenkins

  • В ЦСИ/com.mycompany.projectA/мы имеем источник из проекта А.
  • В тесте/com.mycompany.projectA.tests.ut/есть модульные тесты из проекта А.
  • в тесте/com.mycompany.projectA.tests.swtbot/у нас есть тесты swtbot из проекта А.

для того, чтобы Sonar найти Jacoco и Surefire отчеты для испытаний каждого исходного плагином мы устанавливаем пути отчета в нашем pom.xml:

<sonar.jacoco.reportPath>${project.basedir}/../../test/${project.artifactId}.tests.ut/target/jacoco.exec</sonar.jacoco.reportPath> 
<sonar.surefire.reportsPath>${project.basedir}/../../test/${project.artifactId}.tests.ut/target/surefire-reports</sonar.surefire.reportsPath> 

Но это позволяет только один тест на плагин. Для того, чтобы также увидеть тестовое покрытие SwtBot в SonarQube, мы добавили тесты SWTBot как интеграционные тесты (да, я знаю, не очень аккуратно ...)

<sonar.jacoco.itReportPath>${project.basedir}/../../test/${project.artifactId}.tests.swtbot/target/jacoco.exec</sonar.jacoco.itReportPath> 

Подобно этому, мы можем по крайней мере видеть покрытие модульного тестирования в а также охват тестирования SWTBot в SonarQube. Но поскольку мы можем установить только один путь отчета для отчетов surefire, они игнорируются Sonar, и мы не можем видеть, сколько тестов SWTBot прошло/не прошло.

Есть ли удобный способ добавить несколько мест отчетов верных отчетов, которые необходимо учитывать при анализе?

ответ

Смежные вопросы