1

У меня проблема понимания.Sonar и Jenkins- Интеграционные тесты

Модульные тесты кодируются разработчиками для тестирования класса (Java). Интеграционные тесты нацелены на то, чтобы знать, работают ли разные классы.

Моя проблема: Основываясь на непрерывной интеграции: у меня есть Subversion (SVN), связанная с Дженкинсом, и сонар связан с Дженкинсом.

Как создаются тесты интеграции? Кто их делает? Эти тесты уже доступны в Sonar, или разработчикам приходится их кодировать? Sonar запускает интеграционные тесты благодаря Дженкинсу? Как это работает...?

ответ

0

Интеграционные тесты также кодируются разработчиками, чтобы одновременно тестировать несколько классов, концептуально «модуль», что бы это ни значило в вашем мире.

В моем мире модульные тесты - это тесты, которые выполняют один класс и не имеют внешних зависимостей. Мы разрешаем доступ файловой системы к макету данных и протоколированию, но это все.

Если тест выполняет фактическую базу данных или исполняемый исполняемый файл где-либо (например, веб-сервис), это тест интеграции. Мы пишем их с junit, так же, как и единичный тест.

Мы находим, что это работает лучше всего для того, чтобы у нас были отдельные задания Jenkins, связанные в конвейере для сборки, выполнения модульных тестов, выполнения интеграционных тестов и загрузки Sonar. Хотя SonarQube может запускать тесты для вас, мы предпочитаем разделение, которое позволяет нам вручную выполнять любой набор тестов через Jenkins без обновления Sonar одновременно.

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