Автоматизированное тестирование в CD

Какие типы тестов следует включить в непрерывную интеграцию? Это только модульные тесты или также интеграция/API, пользовательский интерфейс? Или тесты интеграции/API и пользовательского интерфейса должны быть включены только в конвейер непрерывного развертывания/доставки?


person LittleJohnny    schedule 19.11.2019    source источник


Ответы (1)


Этот ответ во многом будет зависеть от того, что вы пытаетесь получить от своей системы CI, и от того, сколько времени занимает выполнение этих тестов. Если это выводит из строя вашего агента CI на длительный период, вы теряете преимущества наличия системы CI на месте.

Это оставляет вам 3 варианта:

  1. Запускать при запуске развертывания. Если в вашей организации есть несколько сред развертывания (например, dev, test, prod) для развертывания, вы можете настроить выполнение этих тестов только при переходе на одну из более готовых к выпуску сред. Это позволит вам продолжить развертывание в среде разработки или тестирования для локального тестирования.
  2. Запускайте эти тесты с запланированным интервалом (например, ночью).
  3. Создайте сложную систему параллельной сборки, в которой вы компилируете и запускаете свои модульные тесты на одном этапе, а специальные агенты запускают тесты. Однако вы можете столкнуться с ситуацией, когда ваши тесты либо стоят в очереди на несколько дней, либо вам приходится платить нескольким агентам.
person Wesley Rolnick    schedule 20.11.2019