Как быстро прогонялась регрессия
Что проверяют
Реально ли вы участвовали в регрессе или только слышали о нём. Интервьюер ждёт цифры: сколько тестов, сколько времени, ручной или автоматический прогон, как часто. Следом спросят, что вы делали, когда регресс не влезал в релизный цикл, и как боролись с нестабильными тестами.
Как отвечать
Рассказывайте про свой проект и со своими числами. Каркас:
- масштаб: объём набора и доля автоматизации, например «около 1200 автотестов на API и UI и 150 ручных кейсов на то, что не автоматизировали»;
- время и частота: сколько идёт полный прогон и когда запускается. Типичная схема: смоук на каждый merge request за минуты, полный регресс ночью или перед релизом;
- как ускоряли: параллельный запуск (
pytest-xdist, шардирование в Playwright, Selenoid или Selenium Grid для браузеров), перенос проверок с UI на уровень API, явные ожидания вместоsleep, подготовка данных через API вместо прокликивания; - выбор набора: деление на смоук, критичный путь и полный регресс, приоритет кейсов по риску и по затронутым модулям;
- стабильность: доля флаки-тестов, карантин для них, перезапуск упавших, отчёты в Allure;
- ручная часть: если регресс ручной, называйте человеко-дни и то, как делили его в команде.
Цифры давайте свои, округлённые и объяснимые. «Сократили с восьми часов до часа» без рассказа, за счёт чего, звучит как шаблон, и интервьюер это слышит.
Если долгого регресса у вас не было, так и скажите: «регресс был ручной, два дня на двоих перед релизом, автоматизацию я только начинал». Затем покажите, как бы ускоряли, это ценится больше выдуманной истории.
Где спотыкаются
Отвечают «быстро» или «часа за два» без контекста. Время без объёма набора и числа потоков ничего не говорит.
Приписывают себе автоматизацию всей команды. Уточняющий вопрос про устройство пайплайна или фреймворк это быстро выявляет.
Называют «регрессом на каждый коммит» полный прогон сотен UI-тестов. Такой пайплайн редко кто выдерживает, и опытный интервьюер спросит, сколько же длилась сборка.