На чем писали автотесты и какими библиотеками
Что проверяют
Писали вы каркас автотестов или добавляли сценарии в готовый, и различаете ли уровни проверок. Отдельно слушают, не смешиваете ли вы в кучу раннер, инструмент управления браузером и систему отчётов: по этой путанице сразу видно, насколько глубоко вы залезали.
Как отвечать
Отвечайте связкой: язык, раннер, инструмент нужного уровня, отчёты, запуск.
- Python:
pytestкак раннер,requestsдля API, Playwright или Selenium для интерфейса,pytest-xdistдля параллельного прогона, Allure для отчётов; - Java: JUnit 5 или TestNG, Selenide либо Selenium, RestAssured для API;
- JavaScript и TypeScript: Playwright, реже Cypress;
- мобильные: Appium, а на стороне платформ Espresso и XCUITest.
Дальше говорите то, чего нет в списках. Какой уровень был основным и почему (API и юниты дешевле и стабильнее интерфейсных). Как готовили данные: через API или прямо в базе, а не кликами в интерфейсе. Как боролись с нестабильностью: ожидания по состоянию элемента вместо пауз, независимые друг от друга тесты, карантин для мигающих. Где прогонялись: на каждый пулреквест, ночью или перед релизом, и кто чинит упавшее. Эти детали и есть ответ про опыт.
Где спотыкаются
Первое: называют Selenium фреймворком тестирования. Это средство управления браузером, структуру задаёт раннер, а отчёты делает третий инструмент. Смешение выдаёт работу по чужому шаблону.
Второе: приносят красивые цифры из шаблонов вроде сокращения ручного тестирования на сорок процентов и не могут объяснить, как их считали. Лучше сказать, сколько сценариев регресса автоматизировано и как часто они гоняются.
Третье: описывают только интерфейсные тесты. Если весь регресс идёт через браузер, он медленный и нестабильный, и интервьюер ждёт от вас слов про распределение проверок по уровням.