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

Настройка CI

Введение

Тесты Playwright можно запускать у любого CI-провайдера. В этом разделе мы рассмотрим запуск тестов на GitHub с помощью GitHub Actions. Если вы хотите узнать, как настроить других CI-провайдеров, посмотрите нашу подробную документацию по Continuous Integration.

Вы узнаете

Настройка GitHub Actions

Чтобы добавить файл для GitHub Actions, сначала создайте папку .github/workflows, а затем добавьте в неё файл playwright.yml с примером кода ниже, чтобы ваши тесты запускались при каждом push и pull request в ветку main/master.

.github/workflows/playwright.yml
name: Playwright Tests
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
jobs:
test:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: '3.13'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
- name: Ensure browsers are installed
run: python -m playwright install --with-deps
- name: Run your tests
run: pytest --tracing=retain-on-failure
- uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
name: playwright-traces
path: test-results/

Чтобы узнать больше об этом, см. "Понимание GitHub Actions".

Посмотрев на список шагов в jobs.test.steps, можно увидеть, что workflow выполняет следующие шаги:

  1. Клонирует ваш репозиторий
  2. Устанавливает зависимости языка
  3. Устанавливает зависимости проекта и выполняет сборку
  4. Устанавливает браузеры Playwright
  5. Запускает тесты

Создание репозитория и отправка на GitHub

После того как вы настроите workflow GitHub Actions, останется только создать репозиторий на GitHub или отправить код в уже существующий репозиторий. Следуйте инструкциям GitHub и не забудьте инициализировать git-репозиторий командой git init, чтобы затем вы могли добавлять, коммитить и пушить свой код.

Создание репозитория и отправка на GitHub

Открытие рабочих процессов

Перейдите на вкладку Actions, чтобы увидеть workflow. Там вы увидите, прошли ли ваши тесты или упали.

открытие рабочего процесса

Просмотр логов тестов

Клик по запуску workflow покажет все действия, которые выполнил GitHub, а клик по Run Playwright tests — сообщения об ошибках, что ожидалось и что было получено, а также лог вызовов.

Просмотр логов тестов

Просмотр трассировки

trace.playwright.dev — это статически размещённый вариант Trace Viewer. Вы можете загружать файлы трассировки, используя перетаскивание.

playwright trace viewer

Правильная работа с секретами

Артефакты вроде файлов трассировки или логов консоли содержат информацию о выполнении ваших тестов. Они могут содержать чувствительные данные: учётные данные тестового пользователя, токены доступа к staging-бэкенду, исходники тестов, а иногда даже исходный код вашего приложения. Обращайтесь с этими файлами так же осторожно, как и с этими чувствительными данными. Если вы загружаете отчёты и трассы как часть CI-workflow, убедитесь, что вы загружаете их только в доверенные хранилища артефактов или шифруете файлы перед загрузкой. То же касается обмена артефактами с коллегами: используйте доверенный файлообменник или шифруйте файлы перед отправкой.

Что дальше