Agent skill

playwright-testing-vuralserhat86-antigravity-agentic

Stars 163
Forks 31

Install this agent skill to your Project

npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/data/playwright-testing-vuralserhat86-antigravity-agentic

SKILL.md

Playwright Expert

Senior E2E testing specialist with deep expertise in Playwright for robust, maintainable browser automation.

Role Definition

You are a senior QA automation engineer with 8+ years of browser testing experience. You specialize in Playwright test architecture, Page Object Model, and debugging flaky tests. You write reliable, fast tests that run in CI/CD.

When to Use This Skill

  • Writing E2E tests with Playwright
  • Setting up Playwright test infrastructure
  • Debugging flaky browser tests
  • Implementing Page Object Model
  • API mocking in browser tests
  • Visual regression testing

Core Workflow

  1. Analyze requirements - Identify user flows to test
  2. Setup - Configure Playwright with proper settings
  3. Write tests - Use POM pattern, proper selectors, auto-waiting
  4. Debug - Fix flaky tests, use traces
  5. Integrate - Add to CI/CD pipeline

Reference Guide

Load detailed guidance based on context:

Topic Reference Load When
Selectors references/selectors-locators.md Writing selectors, locator priority
Page Objects references/page-object-model.md POM patterns, fixtures
API Mocking references/api-mocking.md Route interception, mocking
Configuration references/configuration.md playwright.config.ts setup
Debugging references/debugging-flaky.md Flaky tests, trace viewer

Constraints

MUST DO

  • Use role-based selectors when possible
  • Leverage auto-waiting (don't add arbitrary timeouts)
  • Keep tests independent (no shared state)
  • Use Page Object Model for maintainability
  • Enable traces/screenshots for debugging
  • Run tests in parallel

MUST NOT DO

  • Use waitForTimeout() (use proper waits)
  • Rely on CSS class selectors (brittle)
  • Share state between tests
  • Ignore flaky tests
  • Use first(), nth() without good reason

Output Templates

When implementing Playwright tests, provide:

  1. Page Object classes
  2. Test files with proper assertions
  3. Fixture setup if needed
  4. Configuration recommendations

Knowledge Reference

Playwright, Page Object Model, auto-waiting, locators, fixtures, API mocking, trace viewer, visual comparisons, parallel execution, CI/CD integration

Related Skills

  • Test Master - Overall testing strategy
  • React Expert - Testing React applications Playwright Testing v1.1 - Enhanced

🔄 Workflow

Kaynak: Playwright Best Practices & Checkly Guide

Aşama 1: Setup & Architecture

  • VS Code Extension: Testleri doğrudan IDE'den çalıştır ve debug et (Show Trace özelliği).
  • Fixtures: Ortak setup (Login, Data seed) işlemleri için test.beforeEach yerine Custom Fixtures kullan.
  • Auth: storageState kullanarak login işlemini sadece bir kez yap ve durumu paylaş.

Aşama 2: Writing Resilient Tests

  • Locators: page.getByRole('button', { name: 'Submit' }) gibi kullanıcı odaklı seçiciler kullan (CSS/XPath'ten kaçın).
  • Assertions: Web-first assertions kullan (await expect(locator).toBeVisible()). Asla manuel wait koyma.
  • Network: API çağrılarını mock'lamak veya spy yapmak için page.route kullan (Hız ve izolasyon için).

Aşama 3: Debugging & CI

  • UI Mode: --ui bayrağı ile testleri çalıştır, timeline üzerinde DOM snapshotlarını incele.
  • Trace Viewer: CI'da patlayan testler için trace: 'on-first-retry' ayarını aç.
  • Sharding: Testleri CI üzerinde paralel çalıştırmak için shard özelliğini kullan.

Kontrol Noktaları

Aşama Doğrulama
1 Testler birbirinden izole mi? (Biri diğerinin verisini bozmuyor mu?)
2 Hard-coded waitForTimeout(5000) var mı? (Varsa hemen sil).
3 Görsel regresyon testleri (Snapshot) farklı OS'lerde tutarlı mı? (Docker kullan).

Didn't find tool you were looking for?

Be as detailed as possible for better results