Ответ
Playwright отлично подходит для:
- Кросс-браузерного тестирования (Chrome, Firefox, WebKit)
- E2E-тестов с полным контролем над страницей
- Парсинга данных благодаря быстрому рендерингу
- Тестирования PWA и SPA с поддержкой ожиданий элементов
- Работы с iframe, файлами, API (удобные API для мока и перехвата запросов)
Пример простого теста:
const { test } = require('@playwright/test');
test('Login test', async ({ page }) => {
await page.goto('https://example.com/login');
await page.fill('#username', 'user');
await page.fill('#password', 'pass');
await page.click('button[type="submit"]');
await expect(page).toHaveURL(/dashboard/);
});
Особенно ценю автоматические ожидания и встроенные репортеры.