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

Настройка 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: Setup dotnet
uses: actions/setup-dotnet@v5
with:
dotnet-version: 8.0.x
- name: Build & Install
run: dotnet build
- name: Ensure browsers are installed
run: pwsh bin/Debug/net8.0/playwright.ps1 install --with-deps
- name: Run your tests
run: dotnet test

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

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

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

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

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

репозиторий dotnet на GitHub

Открытие Workflows

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

opening the workflow

В Pull Requests вы также можете нажать на ссылку Детали в проверке статуса PR.

pr status checked

Просмотр журналов тестов

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

viewing the test logs

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

Вы можете загружать трассировки, которые создаются на вашем CI, например, GitHub Actions, как артефакты. Это требует запуска и остановки трассировки. Мы рекомендуем записывать трассировки только для неудачных тестов. После того как ваши трассировки были загружены в CI, их можно скачать и открыть с помощью trace.playwright.dev, который является статически размещенной версией Trace Viewer. Вы можете загружать файлы трассировки с помощью перетаскивания.

playwright trace viewer

Корректная обработка секретов

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

Что дальше