Паттерны автоматизации Веб-приложений на Python

8 участников

О чём курс

Вам нужен инструмент для масштабирования автотестов, которые не «падают» при малейшем изменении верстки — именно архитектурные паттерны позволяют превратить хаотичный код в поддерживаемую систему. Здесь разбирается переход от простых скриптов к профессиональной автоматизации на Python с использованием Page Object, Page Components и Fluent Interface. Вы научитесь инкапсулировать локаторы через метаклассы, работать с динамическими данными через .env, настраивать мультиюзерность и мультирольность в тестах. Материал предназначен для QA-автоматизаторов, которые уже владеют Python, Selenium или Playwright и хотят систематизировать написание тестов с помощью продвинутых паттернов проектирования.

Программа обучения

  • 1 Введение в Page Object
    • Что такое паттерны и зачем они нужны
    • Знакомство с Page Object
    • Основные сущности
    • Вспомогательные методы
    • Первый тест в POM
    • Цепочка запуска
  • 2 Инкапсуляция локаторов
    • Вспоминаем, что такое инкапсуляция
    • Применяем ее на практике
  • 3 Мультистраничные тесты
    • Создание нескольких страниц
    • Базовая инициализация pages
    • Продвинутая инициализация pages + новая сущность
  • 4 Метаклассы для локаторов
    • Что такое метаклассы
    • Избавляемся от картежей в Xpath-локаторах и CSS-селекторах
  • 5 Зависимости проекта
    • Создание файла requirements.txt
    • Использование файла
  • 6 Allure в Page Object
    • Маркировка в POM
    • Разница в шагах и их реализация
    • Генерация отчета
  • 7 Виды интерфейсов
    • Декларативный интерфейс
    • Императивные интерфейс
    • Что выбрать?
  • 8 Переменные окружения
    • Что такое переменные окружения
    • Как создать переменную
    • Мультистейджинг - тесты в разных окружениях
    • Запуск тестов в разных браузерах
  • 9 Чувствительные данные
    • Введение
    • Установка зависимостей
    • Работа с файлом .env
    • Обьект для работы с данными
    • Динамическое изменение данных в зависимости от выбранного окружения
  • 10 Мультиюзерность
    • Работа с несколькими юзерами - Часть 1 (Реализация через методы)
    • Работа с несколькими юзерами - Часть 2 (Реализация через фикстуру)
  • 11 Page Components
    • Особенности использования page component
    • Выделение компонентов страницы
    • Применение компонентного подхода (2 варианта)
  • 12 Мультирольность
    • Тесты для одной роли
    • Тесты для второй роли
    • Одинаковый тест для обеих ролей
    • Тест с немного отличающейся логикой для обеих ролей - используем ветвления
    • Разделение интерфейсов
  • 13 Создание хелперов
    • Что такое и для чего нужны хелперы
    • Создание UI-хелпера
    • Подход в создании API и DB-хелперов
  • 14 Fluent Interface
    • Что такое fluent-паттерн
    • Как работают цепочечные вызовы
    • Применение паттерна в автоматизации
Складчина создана 28 сентября 2024 г. · описание обновлено 23 марта 2026 г.

Другие материалы автора 2

АК Алексей Коледачкин Все материалы
3 000 ₽ 12 900 ₽