Как стать автоматизатором
Можно ли стать автоматизатором без опыта ручного тестирования?
Можно, если есть опыт в программировании. В некоторых компаниях такой путь вполне рабочий: ручные тестировщики пишут тест-кейсы, автоматизатор переносит их в код. Но понимание продукта изнутри, умение видеть краевые случаи и знание типичных дефектов — это то, что приходит с ручным тестированием и напрямую влияет на качество автотестов.
Можно ли писать автотесты без программирования?
Рекордеры генерируют линейный, неподдерживаемый код без переменных, циклов и обработки ошибок. Полезны как вспомогательный инструмент для изучения локаторов элементов, но не как основное средство автоматизации. Low-code платформы (Mabl, Testim) снижают порог входа, но создают потолок: сложная бизнес-логика, data-driven тесты и нестандартные flow всё равно требуют кода.
Языковые пути в автоматизации
Выбор языка следует из стека проекта и задач:
TypeScript + Playwright
Веб E2E, API-тесты
Playwright написан на TS; TS стал #1 языком на GitHub (2025); 91% Playwright-репозиториев на TS
Python + pytest
API, backend, ML-команды
pytest — стандарт де-факто (1300+ плагинов); Playwright официально поддерживает Python
Java + Selenium / REST Assured
Enterprise backend, Spring Boot
Устоявшийся стек в банках/страховых; большая экосистема
Kotlin + Espresso / Detox
Android native
Google официально рекомендует Kotlin; coroutines нативно работают в UI-тестах
Swift + XCUITest
iOS native
Единственный нативный выбор для iOS UI-автоматизации
За сколько тестировщик превращается в автоматизатора
По практике: человека без опыта автоматизации берут на испытательный срок (3 месяца) с задачей написать первый автотест на любую платформу. С наставничеством и готовыми примерами в репозитории — ещё никто не провалил испытательный срок.
Через 3 месяца — понимание базового фреймворка. Через 6–9 месяцев — самостоятельный автоматизатор под одну–две платформы. Глубина знаний приходит с задачами: сложные паттерны изоляции, CI/CD, разбор flaky-тестов.
Карьерный путь
Роадмапы с требованиями для джуна — в теме «Что должен знать и уметь Junior?».
Вопросы для подготовки к собеседованию
Три группы вопросов:
Базовая теория тестирования (как для мануала, хотя бы по верхам)
Автоматизация: виды, инструменты, CI/CD, лучшие практики
Core языка, указанного в вакансии
Вопросы по автоматизации
Что такое автоматизация и зачем она нужна?
Когда нужно начинать автоматизацию на проекте?
Что следует автоматизировать в первую очередь?
Какая бывает автоматизация (виды, методы, платформы)?
Характеристики хорошего автотеста
Паттерны автоматизации (Page Object, Builder, Fixture, Factory)
Популярные фреймворки: Playwright vs Cypress vs Selenium — в чём разница?
Что такое flaky-тест и как с ним бороться?
Что такое test sharding и зачем он нужен?
Инфраструктура CI/CD, пайплайн, место автотестов в нём
Есть новая фича — расскажи, как будешь тестировать и какие автотесты напишешь
Вопросы по CI/CD (GitHub Actions)
Что такое GitHub Actions? Как запустить тесты на push?
Что такое matrix strategy и зачем использовать?
Как настроить sharding в GitHub Actions?
Как кэшировать node_modules / pip-зависимости в workflow?
Что такое artifacts в GitHub Actions? Как опубликовать Playwright-отчёт?
Разница между job и step?
Вопросы по TypeScript (для Playwright/веб-стека)
Разница между
typeиinterface?Что такое generics и зачем нужны?
Что такое async/await? Как обрабатывать ошибки?
Что такое
Promise.allиPromise.allSettled?Разница между
null,undefinedиnever?Что такое optional chaining
?.и nullish coalescing???Что такое декораторы?
Вопросы по Java
Дизайн-паттерны (Factory, Builder, Singleton в тестовом контексте)
Типы данных, коллекции, Map
Модификаторы доступа, Abstract классы, интерфейсы
Лямбда-функции и Stream API
Дженерики
Вопросы по Python
Какие типы данных существуют в Python?
Разница между list и tuple?
Что такое генераторы и итераторы?
Как работает GIL (Global Interpreter Lock)?
Что такое декораторы? Как написать декоратор?
Как работает сборщик мусора в Python?
Что такое list comprehension?
Контекстные менеджеры (
withstatement)Что такое PEP 8?
Вопросы по AI-инструментам (ожидаемое знание 2025)
Как вы используете AI-ассистенты (Copilot, Claude, ChatGPT) в работе?
Как вы проверяете качество теста, сгенерированного AI?
Что такое prompt engineering применительно к генерации тестов?
Как Copilot помогает при написании Page Object Models?
Какие задачи AI решает хорошо, а какие — плохо в тестировании?
Общие вопросы
Разница между библиотекой и фреймворком?
Что означает SNAPSHOT в версии библиотеки?
Что такое SDK?
Что такое mock, stub, fake — в чём разница?
Практические навыки
Писать код и решать задачки (переборы массивов, строковые операции)
Git (commit, branch, merge, rebase)
Консоль / bash
Типовые инструменты для платформы (Playwright, pytest, Espresso)
Моки запросов (WireMock, msw, nock)
Инструменты отчётности (Allure, Playwright HTML Report)
GitHub Actions / GitLab CI (написать базовый workflow)
Пример вопросов от кандидата работодателю
Какой tech stack используется в автоматизации?
Какой CI/CD? GitHub Actions, GitLab CI, Jenkins?
Сколько тестов в суите, как долго прогоняется?
Есть ли проблема flaky-тестов? Как решаете?
Как организованы тестовые данные?
Кто добавляет data-testid / accessibility-идентификаторы в код?
Какой релизный цикл? Сколько времени на регресс?
Источники
Дополнительные материалы
Какие ошибки совершает начинающий QA Automation Engineer? — типичные проблемы и как их избежать
Три типичных ошибки автоматизатора — практический разбор
Last updated