Когда мы стартовали в 2019-м, Cypress был доминирующим выбором для E2E. К 2024-му картина другая: Playwright обогнал по большинству метрик. Делимся обновлённым выбором по типам задач.
Где Playwright явно выигрывает
- Тестирование на нескольких браузерах из одного теста - Chromium, Firefox, WebKit нативно.
- Параллельное выполнение из коробки, без платных тарифов.
- Многотабовые сценарии и работа с iframe - поддерживается без обходных путей.
- Авто-ожидание элементов работает надёжнее.
- Codegen - генерация кода теста по действиям в браузере, экономит часы новичкам.
- Отладка через trace viewer: видишь скриншоты до/после каждого действия.
Где Cypress всё ещё хорош
- Live-режим разработки тестов: интерактивный runner - приятнее, чем у Playwright.
- Cypress Cloud (бывший Dashboard) - зрелее интеграция с CI и расследованием падений.
- Сообщество и количество туториалов на старых версиях больше.
- Component testing для React/Vue - ощутимо лучше отшлифовано.
Цифры с одного из проектов
Перевод E2E-сьюта с Cypress на Playwright (190 тестов): полный прогон с 18 минут сократился до 6 (за счёт нативного параллелизма), flaky-тестов стало меньше (с 7% до 2%), CI-стоимость упала на 40% (меньше параллельных машин).
Что мы выбираем сейчас
- Новый проект, E2E с нуля → Playwright без вариантов.
- Существующий Cypress-сьют, который работает → не мигрировать ради миграции.
- Component testing → Vitest + Testing Library; если уже Cypress - оставлять.
- Тестирование старых проектов с поддержкой только Chrome → разница неважна.