Tmp.SpQgKzelJa
by @alirezarezvani
Production-grade Playwright testing toolkit. Use when the user mentions Playwright tests, end-to-end testing, browser automation, fixing flaky tests, test mi...
clawhub install cs-pwπ About This Skill
name: "playwright-pro" description: "Production-grade Playwright testing toolkit. Use when the user mentions Playwright tests, end-to-end testing, browser automation, fixing flaky tests, test migration, CI/CD testing, or test suites. Generate tests, fix flaky failures, migrate from Cypress/Selenium, sync with TestRail, run on BrowserStack. 55 templates, 3 agents, smart reporting."
Playwright Pro
Production-grade Playwright testing toolkit for AI coding agents.
Available Commands
When installed as a Claude Code plugin, these are available as /pw: commands:
| Command | What it does |
|---|---|
| /pw:init | Set up Playwright β detects framework, generates config, CI, first test |
| /pw:generate | Generate tests from user story, URL, or component |
| /pw:review | Review tests for anti-patterns and coverage gaps |
| /pw:fix | Diagnose and fix failing or flaky tests |
| /pw:migrate | Migrate from Cypress or Selenium to Playwright |
| /pw:coverage | Analyze what's tested vs. what's missing |
| /pw:testrail | Sync with TestRail β read cases, push results |
| /pw:browserstack | Run on BrowserStack, pull cross-browser reports |
| /pw:report | Generate test report in your preferred format |
Quick Start Workflow
The recommended sequence for most projects:
1. /pw:init β scaffolds config, CI pipeline, and a first smoke test
2. /pw:generate β generates tests from your spec or URL
3. /pw:review β validates quality and flags anti-patterns β always run after generate
4. /pw:fix β diagnoses and repairs any failing/flaky tests β run when CI turns red
Validation checkpoints:
/pw:generate β always run /pw:review before committing; it catches locator anti-patterns and missing assertions automatically./pw:fix β re-run the full suite locally (npx playwright test) to confirm the fix doesn't introduce regressions./pw:migrate β run /pw:coverage to confirm parity with the old suite before decommissioning Cypress/Selenium tests.Example: Generate β Review β Fix
# 1. Generate tests from a user story
/pw:generate "As a user I can log in with email and password"Generated: tests/auth/login.spec.ts
β Playwright Pro creates the file using the auth template.
2. Review the generated tests
/pw:review tests/auth/login.spec.tsβ Flags: one test used page.locator('input[type=password]') β suggests getByLabel('Password')
β Fix applied automatically.
3. Run locally to confirm
npx playwright test tests/auth/login.spec.ts --headed4. If a test is flaky in CI, diagnose it
/pw:fix tests/auth/login.spec.ts
β Identifies missing web-first assertion; replaces waitForTimeout(2000) with expect(locator).toBeVisible()
Golden Rules
1. getByRole() over CSS/XPath β resilient to markup changes
2. Never page.waitForTimeout() β use web-first assertions
3. expect(locator) auto-retries; expect(await locator.textContent()) does not
4. Isolate every test β no shared state between tests
5. baseURL in config β zero hardcoded URLs
6. Retries: 2 in CI, 0 locally
7. Traces: 'on-first-retry' β rich debugging without slowdown
8. Fixtures over globals β test.extend() for shared state
9. One behavior per test β multiple related assertions are fine
10. Mock external services only β never mock your own app
Locator Priority
1. getByRole() β buttons, links, headings, form elements
2. getByLabel() β form fields with labels
3. getByText() β non-interactive text
4. getByPlaceholder() β inputs with placeholder
5. getByTestId() β when no semantic option exists
6. page.locator() β CSS/XPath as last resort
What's Included
Integration Setup
TestRail (Optional)
export TESTRAIL_URL="https://your-instance.testrail.io"
export TESTRAIL_USER="your@email.com"
export TESTRAIL_API_KEY="your-api-key"
BrowserStack (Optional)
export BROWSERSTACK_USERNAME="your-username"
export BROWSERSTACK_ACCESS_KEY="your-access-key"
Quick Reference
See reference/ directory for:
golden-rules.md β The 10 non-negotiable ruleslocators.md β Complete locator priority with cheat sheetassertions.md β Web-first assertions referencefixtures.md β Custom fixtures and storageState patternscommon-pitfalls.md β Top 10 mistakes and fixesflaky-tests.md β Diagnosis commands and quick fixesSee templates/README.md for the full template index.