name: playwright description: "E2E тестирование UI с Playwright. Запуск, создание тестов, анализ результатов." paths: - "src//*.tsx" - "src//.jsx" - "src/**/.vue" - "src//*.svelte" - "pages//" - "app/**/" - "tests/e2e//*" - "e2e//*" allowed-tools: Read Edit Write Glob Grep Bash disable-model-invocation: true
Skill: Playwright E2E Testing
Проверка окружения
# Проверить установлен ли Playwright
npx playwright --version 2>/dev/null || echo "Playwright not installed"
Если не установлен:
npm install -D @playwright/test
npx playwright install chromium
Запуск существующих тестов
npx playwright test
С UI отчётом:
npx playwright test --reporter=html
Создание нового теста
При создании E2E теста:
- Определить сценарий (user flow)
- Создать файл в
tests/e2e/илиe2e/ - Использовать паттерн:
import { test, expect } from '@playwright/test';
test('описание сценария', async ({ page }) => {
await page.goto('/');
// ... actions
await expect(page.locator('selector')).toBeVisible();
});
Когда использовать
- После изменений UI-компонентов
- После изменений роутинга
- После изменений форм и интерактивных элементов
- Перед production deploy (обязательно)
Анализ падений
При падении теста:
- Показать скриншот ошибки (если есть в
test-results/) - Показать trace (если включен)
- Определить: баг в коде или устаревший тест
- Предложить фикс