Автоматически ли запускаются автотесты при выкатывании изменений
Что проверяют
Встроены ли ваши автотесты в конвейер поставки или живут отдельно и запускаются, когда кто-то вспомнит. Интервьюеру важно понять, видели ли вы настоящий CI/CD и понимаете ли, какие тесты на каком этапе срабатывают. Следом спрашивают, что происходит, когда тесты упали, и кто это разбирает.
Как отвечать
Опишите конвейер своего проекта по этапам, это сильнее абстрактного «да, в CI»:
- на merge request: юнит-тесты, линтеры и быстрые API-тесты на несколько минут. В GitLab это задаётся в
.gitlab-ci.yml, в GitHub Actions в.github/workflows/*.yml, в Jenkins вJenkinsfile; - блокировка слияния: красный пайплайн запрещает merge. В GitLab это проверка «Pipelines must succeed», в GitHub правило защиты ветки с обязательными проверками;
- после деплоя на стенд: smoke и ключевые end-to-end сценарии на Playwright, Cypress или Selenium против развёрнутого окружения;
- перед продом: регресс или его критическая часть, иногда ручное подтверждение выкатки;
- после выкатки: короткий smoke только на чтение плюс мониторинг;
- по расписанию: ночной длинный регресс, который в каждый коммит не помещается.
Добавьте про отчётность: Allure или встроенные отчёты CI, уведомления в мессенджер, кто отвечает за разбор падений. Хорошо, если назовёте цифры своего проекта: сколько тестов, сколько длится прогон, как часто он краснеет.
Если на прошлом проекте тесты запускали вручную, так и скажите. Затем объясните, как встроили бы их в пайплайн и с какого набора начали бы: обычно это smoke после деплоя на стенд.
Где спотыкаются
Отвечают «да, всё автоматически» и не могут назвать ни инструмент, ни триггер, ни файл конфигурации. Это выдаёт, что пайплайн настраивал кто-то другой, а вы его не открывали.
Запускают весь e2e-набор на каждый коммит. Прогон растягивается на час, разработчики перестают ждать результат, и тесты теряют смысл. Быстрое идёт рано, медленное позже.
Молчат о нестабильных тестах. Если флаки просто перезапускают до зелёного, красный статус перестают воспринимать всерьёз. Нужны карантин и разбор причин.