Автоматизация тестирования UI + API с Python. Базовый

- Уроков: 1
- Сложность: easy
- Аудитория: — Для тех, кто только начинает свой путь в IT и хочет освоить профессию QA Automation Engineer. — Для специалистов, которые уже работают в сфере IT и хотят сменить профиль на QA Automation Engineer. — Для специалистов, которые уже работают по профессии QA Automation Engineer и хотят укрепить свои знания или освоить автоматизацию UI.
💻 Этот курс — полноценное погружение в профессию QA Automation Engineer
Вы освоите автоматизацию как API, так и UI тестирования на современном стеке технологий: HTTPX, Pydantic, Playwright, Allure, Allure TestOPS, Pytest и других.
Курс построен вокруг реального инженерного подхода: без воды, только практика, реальный опыт и комплексные решения, применимые в боевых проектах.
🎯 О чем этот курс?
Мы разберём автоматизацию API и UI тестирования на атомы. Наша цель — не просто научиться кликать кнопки или отправлять запросы к API, а построить полноценные фреймворки для автоматизации тестирования, способные масштабироваться и использоваться в реальных продакшн-проектах.
Курс построен так, чтобы параллельно развивать навыки в двух ключевых направлениях автоматизации тестирования:
- API Automation — создание масштабируемого фреймворка для API тестирования с использованием HTTPX, Pydantic, JSON Schema, Faker, Swagger, Allure и других технологий. Упор на инженерное понимание сетевых протоколов, архитектуры API, работы серверов и продвинутых техник тестирования.
- UI Automation — построение гибкого, поддерживаемого фреймворка на Playwright и Pytest с использованием лучших паттернов автоматизации, включая Page Object, Page Component и уникальный подход Page Factory.
❌ Это не просто курс про библиотеки.
❌ Это не просто курс про базовые тесты.
✅ Это комплексный подход, который охватывает все аспекты современной автоматизации тестирования: от HTTP API до UI в браузере.
📌 Почему этот курс?
Курс — это руководство по построению production-ready фреймворков для автоматизации тестирования. Мы глубоко разбираем не только работу инструментов, но и паттерны проектирования, лучшие практики, архитектуру тестовых проектов и CI/CD-интеграцию.
Каждый блок курса сочетает в себе:
- Теоретическую базу (что, зачем и как работает)
- Детальный разбор инструментов
- Пошаговую практику на реальных примерах
- Практические задания с самостоятельной проверкой и готовыми решениями для сверки
✨ Курс основан на моем реальном опыте работы в автоматизации тестирования. За 9 лет в профессии, включая последние 2 года на позиции QA Lead, я работал с различными языками программирования: Python, TypeScript/JavaScript, C#, Golang, Swift — применяя их для решения сложных задач тестирования в боевых проектах. Этот опыт позволяет мне наполнить курс практическими знаниями, которые можно сразу внедрить в реальные проекты. 🚀
👨💻 Помимо технической экспертизы, провел сотни собеседований как кандидат и интервьюер, что помогает мне давать рекомендации не только по автоматизации, но и по успешному прохождению интервью. 💼
📚 Весь концентрат знаний, который накопил, теперь представлен в этом курсе.
📌 Чем этот курс отличается от других?
🔥 Полный стек автоматизации: API + UI
Освоите автоматизацию как серверной части (API), так и пользовательского интерфейса (UI). Мы будем работать с production-like сервером и веб-приложением.
🔥 Современные технологии и подходы
На API-части: HTTPX, Pydantic, Swagger, Allure, OpenAPI, gRPC, WebSocket, TCP/IP.
На UI-части: Playwright, PageObject, PageComponent, PageFactory, локаторы через DevTools, анализ покрытия тестами, работа с браузерами, видео запись тестов.
🔥 Уникальный инструмент для анализа покрытия API и UI тестов
Вы получите в руки swagger-coverage-tool для анализа покрытия API, а также инструмент ui-coverage-tool для визуализации покрытия UI — выделение элементов прямо в браузере на реальных страницах.
🔥 Максимум практики
Вы самостоятельно напишете десятки автотестов для API и UI, разработаете API-клиенты и реализуете PageFactory элементы, построите архитектуру тестов с фреймворком, готовым для CI/CD.
🔥 Работа с реальными проектами
Тестируем production-like сервер Course API и настоящее веб-приложение на React. Это не "демо-сервер", а проекты, приближённые к реальным боевым условиям.
🔥 Глубокое погружение в CI/CD
Вы научитесь интегрировать тесты в CI/CD с автоматическим поднятием тестового сервера, кэшированием, сбором артефактов и полным включением тестирования в процесс разработки.
🔥 Расстановка data-test-id
в реальном frontend-приложении
С нуля установим и запустим фронтенд на React + TypeScript, после чего детально разберём, как правильно и по best practices расставлять тестовые идентификаторы прямо в боевом коде. Научитесь готовить фронтенд-проект к автоматизации так, как это делают в сильных командах — это серьёзно повышает ценность автотестов в реальных продуктах.
🔥 Разработка собственного фреймворка
Мы не пишем "сырые" тесты. Вы создадите профессиональный фреймворк с логированием, отчётами, параметризацией, фикстурами, обработкой ошибок и масштабированием.
🔥 Подача информации
Курс можно проходить как в видеоформате, так и по текстовым материалам. Вся информация из видео дублируется в тексте, а также дополняется большим количеством полезных материалов, нюансов, практических советов и рекомендаций.
📌 Что вас ждет в курсе?
- ✅ Практика, практика и еще раз практика.
- ✅ Работа с современными и востребованными инструментами: Python, HTTPX, Pydantic, Playwright, Playwright Trace Viewer, Pytest, Allure, Allure TestOPS, JSON Schema, Swagger, cURL, gRPC, WebSocket, TCP/IP.
- ✅ Разработка двух полноценных тестовых фреймворков — для API и для UI — с нуля и до состояния "production ready".
- ✅ Изучение и применение паттернов проектирования: Page Object, Page Component, Page Factory.
- ✅ Параллельный запуск тестов. Настроим параллельный запуск тестов для ускорения прогонов: разбивка на потоки/процессы и оптимизация времени выполнения.
- ✅ Запуск тестов на нескольких браузерах. Освоим запуск тестов на Chrome, Firefox и WebKit через Playwright с учётом особенностей кроссбраузерного тестирования.
- ✅ Интеграция тестов в CI/CD пайплайны:
- Поднимать тестовый сервер в процессе CI/CD пайплайна.
- Реализовывать кэширование зависимостей для ускорения прогонов.
- Генерировать и сохранять артефакты: отчёты Allure, видео записи тестов, логи тестов, отчеты покрытия.
- Организовывать полные end-to-end сценарии тестирования в автоматизированной среде.
- Работать с различными стратегиями триггеров для тестов: по коммиту, пулл-реквесту.
- ✅ Глубокое понимание архитектуры API, принципов работы HTTP, REST API и RESTful API:
- Поработаем с загрузкой файлов
- Разберем самые сложные и нетривиальные случаи в тестировании и работе с API
- Как читать Swagger-документацию и тестировать API через неё
- Как устроена аутентификация, авторизация, идентификация
- Что такое JWT-токены и как с ними работать
- Как API обрабатывает запросы на уровне кода
- Изучим клиент-серверную архитектуру
- Разберём, что такое REST API, и обсудим принципы RESTful-архитектуры
- Поработаем с протоколами HTTP, gRPC, WebSocket и TCP/IP
- ✅ Работа с серверными логами, анализ реальной серверной архитектуры.
- ✅ Уникальные инструменты для визуализации покрытия тестами:
- swagger-coverage-tool — анализ покрытия API тестами по каждому параметру и полю ответа.
- ui-coverage-tool — визуализация действий автотестов на живом интерфейсе прямо в браузере.
- ✅ Процесс автоматизации тестирования. Детально разберём, как должен выглядеть эталонный процесс автоматизации тестирования в команде — от начала разработки до запуска тестов в CI/CD.
🚀 Главная задача курса
Мы не просто учимся запускать тесты. Мы учимся думать как инженеры: строить, анализировать, оптимизировать. Научитесь не только использовать инструменты, а понимать архитектуру и принципы работы API и UI, строить стратегии тестирования и гибкие, поддерживаемые тестовые фреймворки.
🎓 Что включает в себя базовая версия курса?
- 🧩 Полноценные уроки и практические задания — весь учебный материал остаётся доступным: видеоуроки, код, задания, объяснения.
- 🔍 Формат "Всё сам" — вы выполняете задания самостоятельно, без обратной связи от преподавателя. Это отличный вариант для тех, кто готов разбираться в материале самостоятельно.
- 📂 Пример решения под спойлером — каждое практическое задание сопровождается готовым примером решения от преподавателя. Вы можете сверить свой подход и разобрать логику решения.
- 🚫 Без проверки заданий — в базовой версии преподаватель не проверяет решения, не даёт фидбэк и не отвечает на вопросы. Поддержка возможна только в рамках расширенного курса.
- 📌 Кому подойдёт этот формат? Этот формат отлично подойдёт тем, кто:
- предпочитает учиться в самостоятельном темпе;
- уже имеет базовый опыт и хочет восполнить пробелы;
- не нуждается в консультациях и проверке кода.
🔥 Как устроено обучение?
В процессе курса вы будете:
- ✅ Изучать теоретическую часть в удобном формате.
- ✅ Смотреть подробные разборы на видео.
- ✅ Решать тесты с автоматической проверкой.
- ✅ Выполнять практические задания. Будет очень много практики!
Каждый урок максимально насыщен:
- 🎯 Глубокая проработка темы с разбором нюансов и тонкостей.
- 🔎 Практика в видео + тестовые задания + советы и рекомендации.
⚠️ Важно! Модули в курсе будут открываться постепенно. Чтобы перейти к следующему модулю, необходимо набрать определенное количество баллов в текущем. Это вынужденная мера. Выполнять все задания не требуется, достаточно выполнить основную часть.
📚 Дополнительные бесплатные материалы
Перед прохождением курса, вы можете ознакомиться с моими статьями:
- 📄 Как правильно писать UI автотесты на Python
- 📄 Как правильно писать API автотесты на Python
- 📄 UI автотесты на Python с запуском на CI/CD и Allure отчетом. PageObject, PageComponent, PageFactory
- 📄 API автотесты на Python с запуском на CI/CD и Allure отчетом
- 📄 Асинхронные тесты для UI и API на Python: примеры, подводные камни и трезвый вывод
- 📄 Измерение покрытия UI тестами
- 📄 Измерение покрытия UI тестами. Следующий уровень
- 📄 Измерение покрытия API тестами на основе Swagger для Python
- 📄 И другие
🔗 Мои ресурсы:
- LinkedIn: https://www.linkedin.com/in/nikita-filonov-b945871a6/
- Medium: https://medium.com/@filonov.nikitkaa
- GitHub: https://github.com/Nikita-Filonov
- Habr: https://habr.com/ru/users/sound_right/articles/
📌 Об авторских правах и официальной покупке курса
Курс распространяется только на платформе Stepik. Приобретая его здесь, вы получаете:
- Полный доступ ко всем материалам: видео, тексты, задания, тесты, инфраструктура;
- Обновления и новые модули, которые появляются по мере развития курса;
- Я регулярно отвечаю на вопросы в комментариях, помогаю с кодом и разборами;
- Актуальные версии стенда, конфигов и приложений, которые синхронизированы с уроками.
🎓 Курс построен как живой инженерный продукт — с инфраструктурой, CI/CD, задачами и поддержкой. Всё это работает только в официальной версии.
💬 Если вы находите курс на сторонних сайтах — знайте, что в таких копиях:
- отсутствуют задания с проверкой;
- нет комментариев, обновлений и обратной связи;
- часто используются устаревшие материалы или неполные версии уроков.
Это уже не тот курс, который я задумывал.
Если вы хотите пройти курс «как он есть», с поддержкой, проверкой и развитием — проходите его здесь, на Stepik.
-
Базовое знание Python: Понимание синтаксиса языка, основы работы с переменными, функциями, классами и библиотеками.
-
Понимание основ программирования: ООП, алгоритмы, структуры данных — это поможет вам лучше ориентироваться в материалах курса.
-
Желание учиться и развиваться: Курс требует активности и стремления к освоению новых знаний и практик.
-
Уверенное использование компьютера и браузера: Умение работать с IDE, устанавливать необходимые программы и использовать браузер для тестирования.