Описание проекта
Цель — этап конвейера, который на каждый push и запрос на слияние прогоняет модульные, интеграционные и часть сквозных тестов. Он должен выдавать понятный отчёт: что прошло, что упало и почему, публиковать этот отчёт там, где его видит команда, и помечать сборку красной, чтобы сломанное изменение нельзя было слить или развернуть. Ещё хотим, чтобы нестабильные тесты отмечались, а не молча перезапускались до бесконечности, и чтобы общее время прогона держалось в разумных пределах за счёт параллельности и кэширования.
Мы используем распространённый Git-хостинг и стандартный CI-раннер; расскажите, с какими инструментами вам удобно работать и как вы выстроите этапы. Документация и короткая передача знаний нашим инженерам входят в задачу.
Что должна давать готовая настройка:
— автозапуск тестов на каждый коммит и запрос на слияние;
— читаемые отчёты об успехах и провалах с логами;
— блокировка выката при падении тестов;
— быстрая обратная связь за счёт параллельных задач и кэша.