Вышел Playwright 1.59: как тестировщикам с пользой применить каждую новую фичу
- среда, 15 апреля 2026 г. в 00:00:10
Playwright 1.59 — не очередное инкрементальное обновление. Это заявка на то, куда движется автоматизация тестирования, и это направление глубоко агентное. Если вы ждали, когда инструменты догонят AI-driven воркфлоу, о которых все говорят, этот релиз закрывает разрыв.
Разберём каждую крупную фичу и, что важнее, как каждую из них можно применить немедленно.
Главная фича релиза — новый page.screencast API. Это не просто запись видео под новым именем. Это единый интерфейс для захвата происходящего на странице с встроенным контекстом.
API даёт пять возможностей в одном месте: запись скринкастов с контролем start/stop, аннотации действий с подсветкой элементов, визуальные оверлеи для заголовков глав и кастомного HTML, захват кадров в реальном времени для стриминга JPEG-фреймов во внешние инструменты, и агентные видео-квитанции как визуальное подтверждение автоматизированной работы.
Замените ненадёжные скриншоты при падении на целевые скринкасты. Вместо одного замороженного кадра в момент поломки оберните критичные флоу в запись скринкаста:
await page.screencast.start({ path: 'checkout-flow.webm' }); await page.screencast.showActions({ position: 'top-right' }); // Шаги теста оформления заказа await page.locator('#add-to-cart').click(); await page.locator('#checkout').click(); await expect(page.locator('.order-confirmation')).toBeVisible(); await page.screencast.stop();
Теперь при падении теста вы не просто знаете, что сломалось, вы видите всю последовательность событий до поломки, с аннотациями элементов, с которыми происходило взаимодействие.
Используйте главы для длинных E2E-флоу. Если тест покрывает весь путь пользователя (логин, просмотр, корзина, оформление, подтверждение), главы позволяют сегментировать запись:
await page.screencast.showChapter('Authentication', { description: 'Logging in with test credentials', duration: 1000, }); // шаги логина... await page.screencast.showChapter('Product Selection', { description: 'Adding items to cart', duration: 1000, }); // шаги покупки...
Когда вы или стейкхолдер просматриваете видео, главы работают как оглавление. Больше не нужно перематывать 45-секундное видео в поисках момента, где всё пошло не так.
Передавайте кадры в AI vision модели. Колбэк onFrame открывает категорию тестирования, которая раньше была неудобной: визуальная валидация через AI.
await page.screencast.start({ onFrame: ({ data }) => sendToVisionModel(data), size: { width: 800, height: 600 }, });
Так можно построить тест, который отвечает на вопрос «эта страница выглядит сломанной?» без пиксельных скриншотных ассертов.
Собирайте агентные видео-квитанции для CI. Если вы запускаете AI-генерацию тестов или self-healing тесты, агент теперь может создать видео-прохождение с комментариями того, что именно он сделал:
await page.screencast.start({ path: 'receipt.webm' }); await page.screencast.showActions({ position: 'top-right' }); await page.screencast.showChapter('Verifying checkout flow', { description: 'Added coupon code support per ticket #1234', }); await page.locator('#coupon').fill('SAVE20'); await page.locator('#apply-coupon').click(); await expect(page.locator('.discount')).toContainText('20%'); await page.screencast.showChapter('Done', { description: 'Coupon applied, discount reflected in total', }); await page.screencast.stop();
Такое видео просматривается быстрее, чем текстовые логи. Прикрепите к артефактам CI — стейкхолдеры, которые никогда не прочитают лог теста, точно посмотрят 30-секундное аннотированное видео.
Новый browser.bind() API позволяет сделать работающий браузер доступным для нескольких клиентов одновременно: playwright-cli, @playwright/mcp или других потребителей Playwright API.
Можно привязать браузерную сессию с именем, а затем подключиться к ней откуда угодно:
const { endpoint } = await browser.bind('my-session', { workspaceDir: '/my/project', });
Из CLI:
playwright-cli attach my-session playwright-cli -s my-session snapshot
Из MCP-сервера:
@playwright/mcp --endpoint=my-session
Несколько клиентов могут подключаться одновременно. Привязка через WebSocket поддерживается через параметры host и port.
Дебаг агентных тестов в реальном времени. Если AI-агент запускает тесты, привяжите браузер, который он использует, и подключитесь к нему из терминала. Можно наблюдать за происходящим, делать снапшоты и вмешиваться вручную, не останавливая агента.
Шаринг состояния браузера между инструментами. Настройте аутентификацию в одном клиенте, затем подключитесь из другого для запуска тестов в авторизованной сессии. Это убирает оверхед «залогиниться заново» при переключении между ручным исследованием и автоматизированным тестированием.
Комбинация с MCP-серверами для гибридных воркфлоу. Привяжите браузер из тестового сетапа, затем направьте на него IDE с поддержкой MCP. Ваш кодинг-агент увидит и сможет взаимодействовать с тем же браузером, против которого работают тесты.
Запустите playwright-cli show, чтобы открыть дашборд со списком всех привязанных браузеров, их статусами и возможностью взаимодействия.
Мониторинг параллельных запусков. Если тесты работают в нескольких браузерах или несколькими агентами, дашборд даёт live-обзор того, что делает каждый из них. Кликните в любую сессию для ручного вмешательства.
Включение в ежедневный воркфлоу. Установите переменную окружения PLAYWRIGHT_DASHBOARD=1, чтобы видеть все браузеры @playwright/test в дашборде. Локальные запуски тестов превращаются в нечто, что можно наблюдать и дебажить визуально, вместо чтения терминального вывода.
DevTools на запущенных сессиях. Дашборд позволяет открыть DevTools для инспекции страниц из фоновых браузеров. Незаменимо, когда тест зависает и нужно понять, в каком состоянии страница.
Кодинг-агенты теперь могут запустить npx playwright test --debug=cli для подключения и отладки тестов через playwright-cli. Это сделано специально для агентных воркфлоу, где AI чинит падающие тесты.
Пошаговая отладка через AI-агента. Когда тест ломается, агент может подключиться к дебаггеру, пройти тест строка за строкой, инспектировать состояние страницы на каждом шаге и разобраться в проблеме — полностью из командной строки, без GUI.
$ npx playwright test --debug=cli ### Debugging Instructions - Run "playwright-cli attach tw-87b59e" to attach to this test $ playwright-cli attach tw-87b59e $ playwright-cli --session tw-87b59e step-over
Self-healing тестовые пайплайны. Скомбинируйте --debug=cli с healer-агентом из npx playwright init-agents. Когда тест падает в CI, healer может подключиться через CLI debug, понять причину падения и предложить фикс, без участия человека.
Агенты теперь могут запустить npx playwright trace для анализа Playwright Traces прямо из командной строки.
Анализ падений в headless CI-окружениях. Больше не нужно скачивать trace-файлы и открывать их в браузере. Агент (или скрипт) может распарсить трейс, извлечь нужную информацию и либо починить тест, либо создать детальный баг-репорт.
Интеграция трейс-данных в пайплайн отчётности. Извлекайте тайминги, сетевые запросы и последовательности действий из трейсов программно. Стройте кастомные дашборды или передавайте данные в инструмент тестовой аналитики.
Вот где 1.59 раскрывается по-настоящему, когда все фичи объединяются в единый воркфлоу:
Запуск тестов с PLAYWRIGHT_DASHBOARD=1 для визуального мониторинга.
При падении теста healer-агент подключается через --debug=cli.
Агент анализирует трейс через npx playwright trace.
Чинит тест и запускает заново.
Записывает скринкаст-квитанцию прошедшего теста с аннотациями глав.
Видео-квитанция прикрепляется к артефактам CI для ревью человеком.
Это тот самый маховик автоматизации тестирования, который включает Playwright 1.59. Тестировщик сдвигается с позиции «пишет и дебажит тесты» на позицию «проверяет доказательства от агента и принимает стратегические решения по покрытию».
QA Lead и SDET, строящие фреймворки автоматизации: Screencast API и Browser Bind дают инфраструктурные возможности, которые раньше приходилось писать самим.
Команды, использующие AI-assisted тестирование: CLI-дебаггер и анализ трейсов спроектированы специально для агентных воркфлоу.
Все, кто мучается с диагностикой падений тестов: скринкаст-записи с аннотациями действий заменяют игру в угадывание «что случилось?» визуальными доказательствами.
Стейкхолдеры, которые не читают тестовые отчёты: 30-секундное аннотированное видео стоит тысячи строк лога.
Обновитесь до Playwright 1.59:
npm install -D @playwright/test@latest npx playwright install
Начните со Screencast API — у него самый низкий порог входа и самый высокий немедленный эффект. Запишите самый критичный E2E-флоу, добавьте несколько маркеров глав, включите аннотации действий и покажите видео команде. После первой реакции захочется инструментировать всё остальное.
Затем исследуйте browser.bind() и дашборд. Эти фичи фундаментально меняют взаимодействие с тестовой инфраструктурой: от пассивного чтения логов к активному наблюдению и вмешательству в работающие тесты.
Будущее тестирования — наблюдаемое, объяснимое и визуальное. Playwright 1.59 сделал это будущее доступным уже сейчас.
Подписывайтесь на наш Telegram-канал. Там мы публикуем полезные подборки от инженеров и делимся инсайтами.