Задания Jenkins для весенней загрузки приложения с интеграционным тестированием - PullRequest
2 голосов
/ 10 февраля 2020

Вот мой сценарий.

У меня есть приложение, которое построено на загрузке Spring со встроенным сервером Tomcat. В моем приложении у меня есть модульные тесты, а также интеграционные тесты.

Сначала я хочу собрать свое приложение как пакет maven (jar), который будет охватывать все модульные тесты, а затем следующий шаг - запустить jar-файл в качестве приложения весенней загрузки ((java -jar myapplication.jar), которое запустит сервер Tomcat. В качестве последнего шага я хочу запустить интеграционные тесты поверх работающего приложения весенней загрузки.

Чтобы добиться этого в Jenkins, какие из них являются лучшими решениями.

  1. Можно ли выполнить одно задание Jenkins и выполнить описанный выше сценарий? (Как на этапах после сборки для запуска сгенерированного jar как приложение, использующее команду и запускающее на нем интеграционный тест)

  2. В противном случае в Jenkins будет создано 3 задания (одно для пакета maven, второе для развертывания сгенерированного файла jar и запустите приложение, а третий - для запуска интеграционных тестов поверх запущенного приложения.

Пожалуйста, предложите b Есть возможное решение.

Заранее спасибо.

Бала.

1 Ответ

0 голосов
/ 10 февраля 2020

Это должно помочь (если вы используете maven для сборки проекта). Общая идея состоит в том, чтобы использовать инструмент сборки, который может управлять всем процессом в рамках одной работы Jenkins.

<plugin>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-maven-plugin</artifactId>
   <executions>
      <execution>
         <id>pre-integration-test</id>
         <goals>
            <goal>start</goal>
         </goals>
      </execution>
      <execution>
         <id>post-integration-test</id>
         <goals>
            <goal>stop</goal>
         </goals>
      </execution>
   </executions>
</plugin>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...