- mkdocs.yml: Material theme with dark/light mode, search, tabs, sitemap - scripts/generate-docs.py: auto-generates docs from all SKILL.md files - docs/index.md: landing page with domain overview and quick install - docs/getting-started.md: installation guide for Claude Code, Codex, OpenClaw - docs/skills/: 170 skill pages + 9 domain index pages - .github/workflows/static.yml: MkDocs build + GitHub Pages deploy - .gitignore: exclude site/ build output Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
93 lines
3.5 KiB
Markdown
93 lines
3.5 KiB
Markdown
---
|
|
title: "Playwright Pro"
|
|
description: "Playwright Pro - Claude Code skill from the Engineering - Core domain."
|
|
---
|
|
|
|
# Playwright Pro
|
|
|
|
**Domain:** Engineering - Core | **Skill:** `playwright-pro` | **Source:** [`engineering-team/playwright-pro/SKILL.md`](https://github.com/alirezarezvani/claude-skills/tree/main/engineering-team/playwright-pro/SKILL.md)
|
|
|
|
---
|
|
|
|
|
|
# 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 <spec>` | Generate tests from user story, URL, or component |
|
|
| `/pw:review` | Review tests for anti-patterns and coverage gaps |
|
|
| `/pw:fix <test>` | 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 |
|
|
|
|
## 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
|
|
|
|
- **9 skills** with detailed step-by-step instructions
|
|
- **3 specialized agents**: test-architect, test-debugger, migration-planner
|
|
- **55 test templates**: auth, CRUD, checkout, search, forms, dashboard, settings, onboarding, notifications, API, accessibility
|
|
- **2 MCP servers** (TypeScript): TestRail and BrowserStack integrations
|
|
- **Smart hooks**: auto-validate test quality, auto-detect Playwright projects
|
|
- **6 reference docs**: golden rules, locators, assertions, fixtures, pitfalls, flaky tests
|
|
- **Migration guides**: Cypress and Selenium mapping tables
|
|
|
|
## Integration Setup
|
|
|
|
### TestRail (Optional)
|
|
```bash
|
|
export TESTRAIL_URL="https://your-instance.testrail.io"
|
|
export TESTRAIL_USER="your@email.com"
|
|
export TESTRAIL_API_KEY="your-api-key"
|
|
```
|
|
|
|
### BrowserStack (Optional)
|
|
```bash
|
|
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 rules
|
|
- `locators.md` — Complete locator priority with cheat sheet
|
|
- `assertions.md` — Web-first assertions reference
|
|
- `fixtures.md` — Custom fixtures and storageState patterns
|
|
- `common-pitfalls.md` — Top 10 mistakes and fixes
|
|
- `flaky-tests.md` — Diagnosis commands and quick fixes
|
|
|
|
See `templates/README.md` for the full template index.
|