Playwright для Python
Полный справочник на русском языке. Все разделы документации с примерами кода.
Навигация по разделам
Выберите интересующую тему слева. Ниже приведено краткое описание каждого раздела.
Введение
Что такое Playwright, его возможности, поддержка браузеров и языков.
Установка
Установка Playwright, браузеров и настройка окружения.
Написание тестов
Структура тестов, fixtures, page object и базовые паттерны.
Запуск тестов
Конфигурация pytest, параллельный запуск, отчёты.
Тестовые раннеры
Интеграция с pytest, unittest, Django, PyTest-BDD.
Автономная библиотека
Использование Playwright как библиотеки без тестового раннера.
Действия
Клик, ввод текста, выбор опций, загрузка файлов и drag-and-drop.
Автоматическое ожидание
Принципы Auto-Waiting и Actionability Checks.
Локаторы
get_by_role, get_by_text, get_by_test_id и цепочки локаторов.
Другие локаторы
CSS с расширениями Playwright, XPath, текстовые и n-ные локаторы.
Утверждения
expect, soft-assertions, проверка видимости, текста, атрибутов.
Навигации
goto, ожидание загрузки, обработка навигации.
Выполнение JS
page.evaluate(), page.evaluate_handle() и изоляция.
События
Подписка на события браузера, custom-wait и прерывание.
Браузеры
Запуск Chromium, Firefox, WebKit, опции запуска и профили.
Браузерные контексты
Изолированные сессии, настройка размера/языка/геолокации.
Страницы (Page)
Управление вкладками, popup-окнами и multi-page сценариями.
Фреймы
Работа с iframe, вложенные фреймы, content_frame.
ElementHandle
Низкоуровневая работа с DOM-элементами.
Тестирование API
APIRequestContext, GET/POST, проверка ответов и куки.
Мокирование
Перехват и подмена запросов, route, fulfil и abort.
Сеть
Мониторинг запросов, WebSocket, HTTPS-аутентификация.
Отладка
Playwright Inspector, логирование, pause(), пауза в ошибках.
Просмотрщик трассировок
Запись и анализ трассировок, Trace Viewer GUI.
Генератор тестов
codegen, запись действий, автогенерация локаторов.
Скриншоты
Полностраничные, элементов, в буфер, сравнение с эталоном.
Видео
Запись видео прохождения тестов.
ARIA-снимки
Snapshot-тестирование accessibility-дерева.
Эмуляция устройств
Мобильные устройства, viewport, геолокация, язык.
Аутентификация
Cookies, localStorage, storageState для повторного входа.
Расширения Chrome
Загрузка и тестирование расширений Chrome.
WebView2
Автоматизация Edge WebView2 в десктопных приложениях.
Сенсорные события
Эмуляция касаний, pan и pinch жестов.
Clock API
Контроль времени, таймеров и дат в тестах.
Диалоги
alert, confirm, prompt — принятие и отклонение.
Загрузки
Скачивание файлов, указание пути, ожидание завершения.
Page Object Model
Паттерн PageObject, описание страниц и переиспользование.
Расширяемость
Кастомные selectors, плагины, API hooks.
CI
Запуск в GitHub Actions, Jenkins, GitLab CI, CircleCI.
Docker
Официальные образы, запуск в контейнерах.
Поддерживаемые языки
Python, JavaScript, Java, .NET — обзор и различия.
Примечания к релизам
История версий Playwright для Python.