Перейти к основному содержимому

Установка

Введение

Playwright был создан специально для удовлетворения потребностей в end-to-end тестировании. Playwright поддерживает все современные движки рендеринга, включая Chromium, WebKit и Firefox. Тестируйте на Windows, Linux и macOS, локально или на CI, в безголовом или с графическим интерфейсом режиме с нативной эмуляцией мобильных устройств.

Библиотека Playwright может использоваться как универсальный инструмент автоматизации браузера, предоставляя мощный набор API для автоматизации веб-приложений, как для синхронного, так и для асинхронного Python.

Это введение описывает плагин Playwright Pytest, который является рекомендуемым способом написания end-to-end тестов.

Вы узнаете

Установка Playwright Pytest

Playwright рекомендует использовать официальный плагин Playwright Pytest для написания end-to-end тестов. Он обеспечивает изоляцию контекста, выполняя его на нескольких конфигурациях браузера из коробки.

Начните с установки Playwright и запуска примерного теста, чтобы увидеть его в действии.

Установите плагин Pytest:

pip install pytest-playwright

Установите необходимые браузеры:

playwright install

Добавление примерного теста

Создайте файл, который следует соглашению о префиксе test_, например, test_example.py, в текущем рабочем каталоге или в подкаталоге с кодом ниже. Убедитесь, что имя вашего теста также следует соглашению о префиксе test_.

test_example.py
import re
from playwright.sync_api import Page, expect

def test_has_title(page: Page):
page.goto("https://playwright.dev/")

# Ожидаем, что заголовок "содержит" подстроку.
expect(page).to_have_title(re.compile("Playwright"))

def test_get_started_link(page: Page):
page.goto("https://playwright.dev/")

# Клик по ссылке "Get started".
page.get_by_role("link", name="Get started").click()

# Ожидаем, что на странице будет заголовок с именем Installation.
expect(page.get_by_role("heading", name="Installation")).to_be_visible()

Запуск примерного теста

По умолчанию тесты будут запускаться на chromium. Это можно настроить через опции CLI. Тесты выполняются в безголовом режиме, что означает, что интерфейс браузера не будет открываться при запуске тестов. Результаты тестов и логи тестов будут показаны в терминале.

pytest

Обновление Playwright

Чтобы обновить Playwright до последней версии, выполните следующую команду:

pip install pytest-playwright playwright -U

Системные требования

  • Python 3.8 или выше.
  • Windows 10+, Windows Server 2016+ или Windows Subsystem for Linux (WSL).
  • macOS 13 Ventura или новее.
  • Debian 12, Ubuntu 22.04, Ubuntu 24.04 на архитектуре x86-64 и arm64.

Что дальше