Что это простыми словами
QA Automation Engineer (инженер по автоматизации тестирования) — это программист, который пишет код, проверяющий другие программы. Вместо того чтобы вручную кликать по кнопкам и проверять каждую функцию, он создаёт робота-помощника, который всё это делает сам, быстро и без ошибок.
Аналогия: представьте, что вам нужно проверить 100 магазинов сети. Вручную объездить каждый займёт недели. QA Automation Engineer — это тот, кто нанимает курьеров и раздаёт им чек-лист: «Проверь, открыта ли дверь, работает ли касса, лежит ли товар на полке». Он не проверяет сам, но контролирует процесс и получает отчёты.
Официальное определение
Теперь, когда суть понятна, вот как эту роль описывают в вакансиях. Такую формулировку вы будете получать от заказчика и видеть в резюме.
«QA Automation Engineer — специалист, разрабатывающий и поддерживающий автоматизированные тесты и инфраструктуру тестирования для обеспечения качества программного продукта».
Разберём по словам. «Автоматизированные тесты» — это программы, которые тестируют программу (в противовес ручной проверке человеком). «Инфраструктура тестирования» — всё, что нужно для запуска этих проверок: серверы, данные, инструменты. «Обеспечение качества» — гарантия того, что продукт работает правильно.
Что делает за обычный день
Пишет тесты — программы, которые проверяют, работает ли сайт, приложение или сервис. Например: «открыть сайт, ввести логин, нажать кнопку, убедиться, что появилась нужная страница». Если что-то пошло не так — тест падает и сообщается об ошибке.
Поддерживает уже написанные тесты. Когда разработчики меняют интерфейс приложения, старые тесты могут сломаться — QA Automation Engineer находит проблему и исправляет скрипт.
Запускает проверки автоматически, часто прямо при каждом обновлении кода разработчиками. Это называется CI/CD — автоматическая система, которая при каждом изменении кода запускает все тесты и сообщает, ничего ли не сломалось.
Из чего состоит направление
QA Automation Engineer — это прежде всего программист. В основе — знание языка программирования и работа с ним. В зависимости от того, что тестируется (веб-сайт, мобильное приложение, сервер), стек может сильно отличаться.
Главное, что отличает QA Automation от обычного QA Manual (ручного тестировщика) — первый пишет код, второй проверяет руками. В резюме часто пишут просто «QA» — вам нужно уточнять, автоматизирует человек или работает руками. На собеседовании спрашивайте: «Вы пишете автотесты или тестируете вручную?»
Инструменты простыми словами
Инструменты QA Automation удобно разложить по слоям — от самого важного при отборе к менее критичным.
Слой 1. Язык программирования — основа, без него никуда.
Python — самый популярный язык для автоматизации тестирования. Простой, понятный, на нём пишут большинство тестовых фреймворков.
JavaScript — нужен, если тестируют веб-приложения. Часто встречается рядом с React-проектами.
Java — классический выбор для крупных корпоративных проектов и банков.
Слой 2. Фреймворк для тестирования — «школа», в которой человек работает. Это самое важное при отборе.
pytest — самый популярный фреймворк на Python. Проверка отдельных функций и модулей.
Cypress — для тестирования веб-приложений прямо в браузере. Набирает огромную популярность.
Robot Framework — позволяет писать тесты на естественном языке, почти как инструкции. Удобно для команд с разными уровнями.
TestNG — популярный фреймворк на Java для корпоративных проектов.
Слой 3. Специализированные инструменты и библиотеки — детали, которые расширяют возможности.
Appium — автоматизация мобильных приложений (iOS и Android).
Requests — библиотека для проверки серверных API (как проверить, что сервер возвращает правильные данные).
k6, Locust — нагрузочное тестирование: проверяют, как система ведёт себя при большом количестве пользователей.
Faker — генерирует случайные данные (имена, адреса, номера телефонов) для тестов.
Что взаимозаменяемо, а что путать нельзя
QA Automation ≠ QA Manual. Это две разных специальности. Ручной тестировщик проверяет продукт руками, QA Automation Engineer — пишет код, который проверяет автоматически. Человека, тестирующего руками, на вакансию автоматизатора взять нельзя.
Библиотеки внутри одного фреймворка взаимозаменяемы. Например, Requests, RestAssured и Awaitility решают похожие задачи и при опыте в одной легко осваивается другая. Отбраковывать по конкретной библиотеке — ошибка.
Но фреймворки между собой — нет. Тот, кто работает с Cypress, не перейдёт автоматически на Playwright, и наоборот. Опыт между фреймворками почти не переносится.
Уровни: junior / middle / senior
Уровень (его ещё называют грейд) — это не столько годы, сколько самостоятельность.
Junior (джуниор, «джун») — пишет тесты под присмотром, нужно контролировать качество кода и архитектуру.
Middle (мидл) — самостоятельно проектирует тестовые фреймворки, выбирает, что тестировать, и как. Основная рабочая сила.
Senior (сеньор) — определяет стратегию тестирования всей команды, внедряет инструменты, помогает развиваться младшим.
Это общий ориентир. В разных компаниях требования отличаются, поэтому всегда сверяйтесь с текстом конкретной вакансии.
Как узнать роль в резюме
В разделе «навыки» или «стек» ищите название языка программирования (Python, JavaScript, Java) рядом с названием фреймворка для тестирования (pytest, Cypress, Robot Framework, TestNG). Хороший признак — упоминание CI/CD или автоматизации процессов. Красный флаг: если в стеке только Selenium или Postman без программирования — это, скорее всего, ручной тестировщик с навыками работы с инструментами, а не инженер по автоматизации.
Что спросить на первичном скрининге
На каком языке и с каким фреймворком пишете тесты?
Нормальный ответ: «Python и pytest, три года» или «JavaScript и Cypress, два года». Насторожить должно, если человек одинаково уверенно называет сразу все три за короткий срок.
Вы автоматизируете тесты или тестируете вручную?
Нормальный ответ: человек чётко говорит, что пишет код для автотестов. Если он рассказывает о ручном проверке — это QA Manual, а не автоматизатор.
Что именно тестировали — фронтенд, бэкенд, мобильное приложение?
Нормальный ответ: человек понимает разницу и говорит, над чем работал. QA Automation, который тестирует мобильные приложения, — не то же самое, что QA Automation для бэкенда.
Работали с CI/CD?
Нормальный ответ: «Да, настроил пайплайн в Jenkins/GitLab CI» или «Тесты запускались автоматически при каждом коммите». Для middle и выше это ожидаемо.
Это общий ориентир. В разных компаниях требования отличаются, поэтому всегда сверяйтесь с текстом конкретной вакансии.
Частые путаницы и красные флаги
QA Automation ≠ QA Manual. Автоматизатор пишет код, ручной тестировщик проверяет продукты руками. Это разные специальности.
QA Automation ≠ DevOps. DevOps настраивает инфраструктуру и пайплайны, QA Automation пишет тесты. Хотя они часто работают вместе.
Postman, Selenium — это инструменты, а не языки. Если в резюме только они без программирования — это не QA Automation Engineer.
QA Automation для фронтенда ≠ QA Automation для бэкенда. Один тестирует интерфейсы, другой — серверную логику. Это разные люди.
Красный флаг: «Python, JavaScript, Java, Cypress, Robot Framework, Appium, TestNG — все на уровне senior за два года» — так не бывает.