В 2026 году произошло то, чего в мире тестирования ждали лет пять: Playwright впервые обошёл Selenium. По данным опроса TestGuild среди QA-специалистов (2026), Playwright используют 45,1 % команд, у Selenium осталось 22,1 %, у Cypress 14,4 %. А потом человек, который решил войти в автоматизацию, открывает вакансии на hh.ru и видит там Java, Selenium и JUnit. И перестаёт понимать, что учить.
Мы разобрали все ключевые инструменты автоматизации тестирования: что делает каждый, кому он нужен на практике и в каком порядке их брать новичку. Отдельно собрали сравнительную таблицу Selenium, Playwright, Cypress и Appium, разбор простого автотеста построчно, карту изучения на 6 месяцев и список ситуаций, когда автоматизация вообще не нужна.
Если вы пока смутно представляете саму профессию, начните с обзорного материала «Кто такой тестировщик-автоматизатор и какой стек ему нужен». Там разобрано, чем этот человек занимается каждый день и как выглядит его типичная неделя.
Статья рассчитана на новичка. Это может быть ручной тестировщик, который упёрся в потолок по деньгам, разработчик, которому свалились автотесты на проекте, или человек вообще со стороны. Путь из ручного тестирования в автоматизацию мы подробно расписали в материале «Как стать тестировщиком ПО с нуля».
А если хочется сразу учиться системно, у нас собрана подборка курсов по автоматизированному тестированию: 61 программа от коротких интенсивов по одному фреймворку до годовых курсов с трудоустройством.
Сразу оговорка про деньги: почти все инструменты автоматизированного тестирования бесплатны и с открытым кодом. Платить приходится за облачные фермы устройств и за коммерческие платформы вроде Katalon Studio, а весь базовый набор ставится на свой ноутбук без единого рубля.
Начнём с базы, потому что половина путаницы у новичков растёт именно оттуда.
Что такое автоматизированное тестирование и чем оно отличается от ручного

Автоматизированное тестирование — это когда проверки за человеком выполняет программа. Тестировщик один раз описывает сценарий кодом («открой сайт, введи логин, нажми кнопку, проверь, что появилась надпись»), и дальше этот сценарий крутится сам: после каждой сборки, каждую ночь, на пяти браузерах сразу.
Ручной тестировщик проходит те же шаги руками. Он делает это лучше машины, когда сценарий новый и непонятный, когда надо оценить, удобно ли пользователю, или когда нужна смекалка. Машина выигрывает там, где одно и то же надо проверить в сотый раз.
Отсюда главная мысль, которую стоит принять до начала учёбы: автотесты закрывают регрессию, то есть повторную проверку того, что уже работало и не должно было сломаться. Регрессия занимает у живых людей огромную часть рабочего времени и при этом смертельно скучна. Именно её и отдают роботу.
Есть и вторая причина, чисто денежная. Ручная регрессия крупного продукта перед релизом легко съедает неделю работы команды из пяти человек. Тот же набор проверок в виде автотестов прогоняется ночью и к утру выдаёт отчёт. Поэтому автоматизаторам платят больше: они не просто пишут код, они возвращают компании календарное время.
Важный нюанс. Автоматизация не находит новые баги. Она ловит те, что вернулись. Поиск нового по-прежнему остаётся работой человека, и поэтому ручные тестировщики никуда не делись.
Подробный разбор этой границы есть в материале «Кто такой инженер по ручному тестированию и почему его не заменят автотесты».
Пирамида тестирования: почему UI-тесты это только верхушка
Новичок обычно приходит с картинкой в голове: автоматизация это когда браузер сам бегает по кнопкам. На деле такие тесты (их называют UI-тестами, от user interface, пользовательский интерфейс) составляют самую маленькую часть нормального проекта.
Стандартная модель называется пирамидой тестирования и выглядит так снизу вверх:
- Unit-тесты (юнит-тесты, модульные) проверяют отдельную функцию в коде. Быстрые, их тысячи, пишут обычно разработчики на pytest, JUnit или TestNG.
- Интеграционные и API-тесты проверяют, что части системы правильно разговаривают между собой. API (application programming interface) это способ, которым программы обмениваются данными напрямую, без участия интерфейса.
- UI-тесты проверяют весь путь пользователя целиком, через настоящий браузер или приложение. Медленные, капризные, их держат десятками, а не тысячами.
Практический вывод для выбора инструментов: Selenium и Playwright живут только на верхнем этаже пирамиды. Если человек выучил один Playwright и больше ничего, он умеет автоматизировать примерно десятую часть того, что автоматизируют в реальной команде. Ниже разберём и остальные этажи.
Канал основателя Checkroi Вани Буявца3 700 человек читают мой Телеграм-канал про нейросетиСобрал промпты для Claude Code и ChatGPT, разборы ИИ-инструментов и лайфхаки по продвижению бизнеса в одном местеПрисоединитьсяPython или Java: с какого языка начинать автоматизацию
Это первый настоящий вопрос, и он важнее выбора фреймворка. Все серьёзные инструменты автоматизации требуют кода. Не уровня «пишу свой мессенджер», но переменные, циклы, условия и классы придётся понимать всерьёз.
Расклад по российским вакансиям такой: Java встречается примерно в 64 % предложений для автоматизаторов, Python в 26 %. JavaScript и C# делят остаток. Java традиционно живёт в банках и крупных корпорациях, Python — в продуктовых компаниях и везде, где много API-тестов.
Как выбирать на практике:
- Python подойдёт, если вы начинаете с нуля и программировать раньше не доводилось. Синтаксис проще, первый рабочий тест вы напишете через пару недель, а не через два месяца. Связка pytest плюс Playwright или Selenium закрывает большинство задач.
- Java берите, если целитесь в крупную компанию с большой зарплатной вилкой или уже видите конкретные вакансии в своём городе с требованием Java. Вход дольше, потолок выше.
- JavaScript или TypeScript имеет смысл, если вы фронтендер и автотесты нужны на своём же проекте.
Если сомневаетесь, берите Python. Переучиться с Python на Java, когда вы уже понимаете структуру автотестов, занимает месяц-полтора. Бросить учёбу на третьей неделе из-за громоздкого синтаксиса Java намного проще.
Курсы по языку и по автоматизации имеет смысл смотреть вместе: в хороших программах основы Python дают прямо внутри курса по автотестам, без отдельного захода.
Selenium, Playwright и Cypress: три главных инструмента для веба

Это те самые фреймворки, вокруг которых идут все споры. Все трое делают одно: управляют браузером вместо человека. Разница в том, как именно они это делают.
Selenium
Selenium — ветеран рынка и до сих пор самый частый пункт в вакансиях. Работает через WebDriver, отдельный стандартный протокол управления браузером. Поддерживает практически любой язык программирования: Java, Python, C#, Ruby, PHP, JavaScript. Умеет работать с любым браузером, включая старые версии и экзотику вроде корпоративных сборок.
Главная боль Selenium в отсутствии автоожидания. Браузер ещё рисует страницу, а тест уже пытается нажать кнопку и падает. Лечится это явными ожиданиями в коде, и именно на этом растут flaky-тесты (нестабильные тесты, которые падают через раз без изменений в коде). В больших проектах на Selenium 5–10 % нестабильных прогонов в неделю считаются обычным делом.
Для запуска тестов параллельно на многих браузерах Selenium нужен Selenium Grid или его популярный в России аналог Selenoid: отдельная инфраструктура, которую надо поднимать и поддерживать. Всё это делает Selenium мощным, но тяжёлым в освоении.
Playwright
Playwright — современный стандарт для новых проектов. Разработан в Microsoft, общается с браузером напрямую через служебный протокол, минуя WebDriver. Из коробки даёт автоожидание: тест сам дожидается, пока элемент появится и станет кликабельным. В бенчмарках это даёт около 60 % сокращения нестабильных тестов.
Ещё Playwright умеет запускать тесты параллельно без всякого грида, записывать трассировку прогона (можно потом покадрово посмотреть, что происходило в браузере), подменять сетевые ответы и спокойно работать с несколькими вкладками и доменами. Языки: JavaScript, TypeScript, Python, Java, C#.
Отдельно стоит упомянуть кодогенератор: Playwright умеет записывать ваши действия в браузере и превращать их в готовый код теста. Для новичка это отличный способ увидеть, как устроен рабочий сценарий, и дальше править его руками.
Cypress
Cypress — выбор фронтенд-команд, которые любят удобство. Работает внутри самого браузера, что даёт лучший в классе процесс отладки: видно каждый шаг теста, можно отмотать назад и посмотреть состояние страницы в любой момент. Первый зелёный тест пишется за полчаса после установки.
Цена такого удобства в ограничениях архитектуры. Только JavaScript и TypeScript, проблемы с несколькими вкладками, неполная поддержка Safari, сложности при переходах между доменами. На российском рынке труда Cypress встречается заметно реже двух других.
| Параметр | Selenium | Playwright | Cypress |
|---|---|---|---|
| Доля использования, 2026 | 22,1 % | 45,1 % | 14,4 % |
| Языки | практически любые | JS/TS, Python, Java, C# | только JS/TS |
| Автоожидание | нет, пишется руками | да, из коробки | да |
| Параллельный запуск | через Grid или Selenoid | встроенный | встроенный |
| Несколько вкладок | да | да | плохо |
| Порог входа | высокий | средний | низкий |
| Спрос в вакансиях РФ | максимальный | быстро растёт | редко |
| Кому подходит | легаси, банки, широкая кроссбраузерность | новые проекты, большинство команд | фронтенд-команды на JS |
Что учить первым. Если у вас нет конкретной вакансии перед глазами, берите Playwright: на нём быстрее получается рабочий результат, меньше поводов бросить, и он растёт. Selenium добавляйте вторым, недели за три: сама механика поиска элементов там та же, разница в обвязке и ожиданиях. Cypress отдельно учить новичку смысла мало, он берётся за пару дней, когда он понадобится на работе.
Как выглядит простой автотест
Чтобы слово «фреймворк» перестало быть абстракцией, вот полноценный тест на Playwright и Python. Он открывает сайт, ищет товар и проверяет, что что-то нашлось:
def test_search(page):
page.goto("https://example.com")
page.fill("#search", "ноутбук")
page.click("button[type=submit]")
assert page.locator(".product-card").count() > 0
Построчно это читается так. Первая строка объявляет тест, слово page в скобках означает «дай мне открытую вкладку браузера». Дальше идут действия: перейти по адресу, заполнить поле поиска, нажать кнопку. Последняя строка это проверка: тест ищет карточки товаров и требует, чтобы их было больше нуля. Не сошлось, тест падает и окрашивается в отчёте красным.
Строки вида #search и .product-card называются локаторами: это адреса элементов на странице. Умение находить устойчивые локаторы и есть главный практический навык UI-автоматизатора. Именно из-за плохих локаторов тесты потом падают после каждого редизайна.
Мобильные приложения и API: Appium, Maestro, Postman, JMeter
Веб далеко не единственное место, где нужны автотесты. Вот что закрывает остальное.
Appium остаётся главным инструментом автоматизации мобильных приложений. Работает и с Android, и с iOS, использует тот же протокол WebDriver, что и Selenium, поэтому человеку с опытом в Selenium даётся легко. Поддерживает много языков и умеет тестировать уже собранное приложение, без доступа к исходникам. Минус классический: тяжёлая настройка окружения и медленные прогоны.
Maestro это молодая альтернатива Appium. Сценарии описываются в YAML (простой текстовый формат, похожий на список настроек), ожидания встроены, первый тест запускается за день. Для маленькой мобильной команды это часто разумнее Appium. Рядом живут нативные варианты: Espresso для Android и XCUITest для iOS, их обычно пишут сами мобильные разработчики.
Postman это самый популярный инструмент для работы с API. По свежим данным о вакансиях, его требуют в 30 % предложений для тестировщиков, а понимание REST в 40,2 %. Начинается Postman как удобное окно для ручной отправки запросов, дальше внутри пишутся проверки, а коллекции запускаются через Newman прямо на сервере сборки. Для новичка это самый быстрый вход в автоматизацию вообще: результат виден в первый день.
JMeter и k6 отвечают за нагрузочное тестирование, то есть проверку, что система выдержит тысячу пользователей одновременно. JMeter старше и требует меньше кода, k6 современнее и пишется на JavaScript. Новичку это направление трогать рано, но знать о его существовании полезно: нагрузочники на рынке дефицитнее обычных автоматизаторов, а платят им больше.
Совет. Если хочется как можно быстрее показать работодателю рабочий навык, начинайте не с браузера, а с API. Postman и первые автотесты на запросах осваиваются за две-три недели и уже выглядят в резюме как настоящая автоматизация.
Что ещё входит в стек автоматизатора кроме фреймворка
Средства автоматизации тестирования не заканчиваются на фреймворке, и тут кроется самая частая ошибка новичка. Человек учит Playwright, приходит на собеседование и выясняет, что фреймворк был примерно четвертью требований. По свежим срезам вакансий чаще всего в требованиях всплывают SQL (52,4 %), REST (40,2 %), Jira (35,6 %) и Postman (30 %). Вот что нужно кроме самих автотестов.
- Git — система хранения версий кода. Обязательна везде, без исключений. Уровень «умею создать ветку, слить изменения и разрулить конфликт» закрывает 95 % рабочих ситуаций.
- SQL — язык запросов к базам данных. Нужен, чтобы проверить, что тест записал данные в базу, а не просто показал зелёную галочку на экране. Разобраться с подключением помогает наш разбор «Как подключиться к базе данных в DBeaver».
- CI/CD — системы, которые сами запускают тесты после каждого изменения кода. Чаще всего это Jenkins или GitHub Actions. Задача автоматизатора: настроить запуск своих тестов и понимать, почему прогон упал.
- Allure — генератор отчётов по прогонам. Превращает вывод в консоли в наглядную страницу со скриншотами и шагами. Стандарт де-факто в русскоязычных командах.
- Docker — упаковка окружения в контейнер, чтобы тесты одинаково работали на вашем ноутбуке и на сервере. Достаточно уметь запустить готовый контейнер и прочитать файл docker-compose.
- Page Object — способ организации кода тестов, при котором каждая страница описывается отдельным классом. Без него проект из сотни тестов превращается в кашу после первого редизайна.
Как всё это встраивается в процесс разработки, мы разобрали в статье «SDLC: этапы и модели жизненного цикла разработки ПО».
В каком порядке учить инструменты: карта на 6 месяцев

Это ответ на главный вопрос, который обычно тонет в списках из тридцати названий. План рассчитан на 10–15 часов в неделю и на человека, который уже понимает основы тестирования.
Месяцы 1 и 2: язык и основы кода
- Python (или Java, если целитесь в корпорации): переменные, циклы, функции, классы, работа с файлами
- Git на уровне веток и слияний
- Первый тестовый фреймворк языка: pytest или JUnit
Месяц 3: API-тесты
- Postman: запросы, коллекции, проверки, переменные окружения
- Основы HTTP и REST: методы, коды ответов, заголовки
- Первые автотесты на API прямо из кода (библиотека requests в Python или REST Assured в Java)
- SQL: запросы SELECT с условиями и соединениями таблиц
Месяц 4: UI-автоматизация
- Playwright: локаторы, действия, проверки, автоожидание
- Page Object и структура проекта
- Selenium вторым инструментом, для понимания вакансий с легаси
Месяц 5: обвязка и инфраструктура
- Allure-отчёты, подключённые к своему проекту
- Запуск тестов в GitHub Actions или Jenkins
- Docker на уровне запуска готовых образов
Месяц 6: пет-проект и резюме
- Свой репозиторий с 20–30 тестами на реальном публичном сайте
- Настроенный CI, который гоняет smoke-тесты по расписанию
- Отчёты Allure, доступные по ссылке
- Разбор типовых вопросов с собеседований
Мобильную автоматизацию (Appium, Maestro) и нагрузку (JMeter, k6) в этот план мы намеренно не включили: их берут уже на работе, под конкретную задачу. Сколько платят на выходе, можно посмотреть в обзоре зарплат тестировщиков: у автоматизаторов вилка заметно выше, чем у ручных специалистов.
Когда автоматизация не нужна
Об этом почти не пишут, а зря: понимание границ отличает инженера от человека, который выучил синтаксис. Автотесты стоят денег в написании и ещё больше в поддержке. Есть ситуации, где они просто не окупятся.
- Интерфейс меняется каждую неделю. Стартап на стадии поиска продукта перерисовывает экраны быстрее, чем вы чините упавшие тесты.
- Проект живёт три месяца. Разовая рекламная страница или временный сервис не успеет накопить регрессию.
- Сценарий выполняется один раз. Проверка, которую больше никогда не повторят, дешевле руками.
- Нужна оценка удобства или красоты. Машина не скажет, что кнопка выглядит странно, а текст пугает пользователя.
- В команде некому поддерживать тесты. Заброшенный набор автотестов, который падает всегда, вреднее его отсутствия: люди перестают смотреть на результаты прогонов.
Хороший ответ на собеседовании. «Автоматизирую то, что стабильно, повторяется часто и ломается больно». Три критерия сразу, и видно, что человек думает про пользу, а не про количество написанных тестов.
Где научиться автоматизации тестирования
Собрать этот стек самостоятельно можно, материалов хватает. Проблема самоучек обычно не в знаниях, а в порядке и обратной связи: код, который никто не проверял, закрепляет ошибки, а без дедлайнов учёба растягивается на два года вместо шести месяцев. Курс решает обе задачи сразу и обычно даёт готовый пет-проект в портфолио.
Мы собрали программы обучения автоматизации тестирования от разных школ, сравнили цены, длительность и стек, посмотрели, есть ли живая практика:
| Курс | Школа | Стоимость со скидкой | В рассрочку | Длительность | Обзор курса от Checkroi |
|---|---|---|---|---|---|
| Автоматизированное тестирование на Python Перейти на сайт курса | 118 666 ₽ | 4108 ₽/мес. | 9 месяцев | Обзор курса | |
| Автоматизированное тестирование на Java Перейти на сайт курса | 42 364 ₽ | 2567 ₽/мес. | 2 месяца | Обзор курса | |
| Автоматизатор тестирования на Java Перейти на сайт курса | 105 500 ₽ | 17 000 ₽/мес. | 5 месяцев | Обзор курса | |
| Автоматизированное тестирование на С# Перейти на сайт курса | 90 000 ₽ | 185 000 ₽/мес. | 4 месяца | Обзор курса | |
| Автоматизированное тестирование веб-приложений на JavaScript Перейти на сайт курса | 42 900 ₽ | 3575 ₽/мес. | 4 месяца | Обзор курса | |
| Автоматизатор тестирования на JavaScript Перейти на сайт курса | 67 500 ₽ | 3853 ₽/мес. | 6 месяцев | Обзор курса | |
| Автоматизированное тестирование на Java Перейти на сайт курса | 90 000 ₽ | 185 000 ₽/мес. | 5 месяцев | Обзор курса | |
| Автоматизированное тестирование на JavaScript Перейти на сайт курса | 80 000 ₽ | 184 444 ₽/мес. | 4 месяца | Обзор курса | |
| Автоматизатор тестирования на Java: расширенная версия Перейти на сайт курса | 149 000 ₽ | 12 417 ₽/мес. | 5 месяцев | Обзор курса | |
| Автоматизатор тестирования на Python Перейти на сайт курса | 106 000 ₽ | 8833 ₽/мес. | 6 месяцев | Обзор курса |
Больше программ — в полном каталоге курсов по автоматизированному тестированию
Если сомневаетесь, стоит ли вообще идти в эту профессию, посмотрите разбор «Кто такой инженер по тестированию и правда ли это лёгкий вход в IT», а для выбора школы пригодится наша подборка лучших онлайн-школ тестировщиков.




