2015-10-18 3 views
0

Справочная информация: У меня есть два отдельных проекта java, назовите их A и B. Проект A - это фактический продукт (военное приложение) с модульными испытаниями. Gradle строит проект, а затем запускает анализ сонара, и я вижу охват модульных испытаний в Sonar. Проект B является интеграционным тестом для первого проекта. Он запускается Jenkins в конвейере после построения проекта A и развертывания его в среде интеграции. Развертывание также включает в себя инструментарий для кода, чтобы отчет jacoco-it соответствовал классам Project A.Добавление покрытия для тестирования интеграции jacoco для Sonar

Мой вопрос: Как добавить к странице сонара проекта А, которая в настоящее время покрывает только единицы измерения, покрытие интеграционных тестов - как второй шаг?

Поток мне нужно:

  1. сборки проекта Анализ гидролокатора
  2. работать на проекте А (теперь он будет показывать охват юнит-тестов на своей странице эхолота)
  3. сборки проекта B
  4. анализа гидролокатора
  5. работать на проект B - который будет просто добавить интеграционный охват проект А на гидролокаторе

Это в настоящее время не работает. когда я бегу гидролокатора анализ проекта В это путает страницу эхолота Проект A, удаляя единичную-тестовое покрытие А.

Поток, что у меня есть сейчас, который работает, но я хочу изменить это:

  1. проект сборки анализ гидролокатора
  2. работать на проекте
  3. сборки проекта B
  4. создать отчет jacoco по проекту Б. это выводит jacoco-it.exec файл в определенном месте на моем диске
  5. выполнения так nar на проекте A (у него есть настройка для получения файла jacoco-it.exec из указанного места
  6. теперь на странице сонара проекта A будут показаны как модульные тесты, так и проверка интеграционных испытаний, но шаг 5 полностью избыточен и Я хочу этого избежать.

Любые предложения?

ответ

0

, что я предложу немного отличается:

  • использовать некоторый инструмент автоматизации сборки
  • создать «клетчатую» работу сонара, который не делает полный анализ; только инкрементальный, это должно перерыв когда добавить качество ворот выключатель выдает
  • создать ночную работу для вашего проекта с помощью полного анализа: -Dsonar.analysis.mode=analysis (примечание: мой опыт показывает, что в этом случае вы должны инкрементного до этот анализ, потому что в режиме анализа сонар принимает новые проблемы с отключением ворот
  • Я не думаю, что интеграционные тесты должны учитываться в охвате тестирования проекта, так что это может быть просто опущено.
+0

Спасибо за ваш ответ. Мне легче реализовать решение ниже – NirG

0

Вы не можете внести изменения в предыдущий анализ, поэтому ваше задание «B» заменяет собой тестовые номера модулей. Что вам нужно сделать, так это создать отчет об охвате теста интеграции перед анализом и сделать этот отчет доступным, чтобы как тестеры тестирования, так и интеграционные тесты можно было прочитать в том же анализе.

С точки зрения сборки трубопровода, который мог бы получить сложно, в зависимости от того, как вы должны структурировать работу, но экспромтом это звучит, как вам нужно 3 задания:

  1. сборки проекта
  2. сборки проекта в & генерировать отчет об испытаниях интеграции
  3. работы 3 тянет его тест интеграции с работой 2, и либо перестраивает проект A или тянет код, классы и тест блока с работы 1 и выполняет анализ
+0

Спасибо. Это действительно имеет смысл в качестве решения – NirG

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