Complete Claude Code plugin with: - 9 skills (/pw:init, generate, review, fix, migrate, coverage, testrail, browserstack, report) - 3 specialized agents (test-architect, test-debugger, migration-planner) - 55 test case templates across 11 categories (auth, CRUD, checkout, search, forms, dashboard, settings, onboarding, notifications, API, accessibility) - TestRail MCP server (TypeScript) — 8 tools for bidirectional sync - BrowserStack MCP server (TypeScript) — 7 tools for cross-browser testing - Smart hooks (auto-validate tests, auto-detect Playwright projects) - 6 curated reference docs (golden rules, locators, assertions, fixtures, pitfalls, flaky tests) - Leverages Claude Code built-ins (/batch, /debug, Explore subagent) - Zero-config for core features; TestRail/BrowserStack via env vars - Both TypeScript and JavaScript support throughout Co-authored-by: Leo <leo@openclaw.ai>
124 lines
4.8 KiB
Markdown
124 lines
4.8 KiB
Markdown
# Test Case Templates
|
|
|
|
55 ready-to-use, parametrizable Playwright test templates. Each includes TypeScript and JavaScript examples with `{{placeholder}}` markers for customization.
|
|
|
|
## Usage
|
|
|
|
Templates are loaded by `/pw:generate` when it detects a matching scenario. You can also reference them directly:
|
|
|
|
```
|
|
/pw:generate "login flow" → loads templates/auth/login.md
|
|
```
|
|
|
|
## Template Index
|
|
|
|
### Authentication (8)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [login.md](auth/login.md) | Email/password login, social login, remember me |
|
|
| [logout.md](auth/logout.md) | Logout from nav, session cleanup |
|
|
| [sso.md](auth/sso.md) | SSO redirect flow, callback handling |
|
|
| [mfa.md](auth/mfa.md) | 2FA code entry, backup codes |
|
|
| [password-reset.md](auth/password-reset.md) | Request reset, enter new password, expired link |
|
|
| [session-timeout.md](auth/session-timeout.md) | Auto-logout, session refresh |
|
|
| [remember-me.md](auth/remember-me.md) | Persistent login, cookie expiry |
|
|
| [rbac.md](auth/rbac.md) | Role-based access, forbidden page |
|
|
|
|
### CRUD Operations (6)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [create.md](crud/create.md) | Create entity with form |
|
|
| [read.md](crud/read.md) | View details, list view |
|
|
| [update.md](crud/update.md) | Edit entity, inline edit |
|
|
| [delete.md](crud/delete.md) | Delete with confirmation |
|
|
| [bulk-operations.md](crud/bulk-operations.md) | Select multiple, bulk actions |
|
|
| [soft-delete.md](crud/soft-delete.md) | Archive, restore |
|
|
|
|
### Checkout (6)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [add-to-cart.md](checkout/add-to-cart.md) | Add item, update cart |
|
|
| [update-quantity.md](checkout/update-quantity.md) | Increase, decrease, remove |
|
|
| [apply-coupon.md](checkout/apply-coupon.md) | Valid/invalid/expired codes |
|
|
| [payment.md](checkout/payment.md) | Card form, validation, processing |
|
|
| [order-confirm.md](checkout/order-confirm.md) | Success page, order details |
|
|
| [order-history.md](checkout/order-history.md) | List orders, pagination |
|
|
|
|
### Search & Filter (5)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [basic-search.md](search/basic-search.md) | Search input, results |
|
|
| [filters.md](search/filters.md) | Category, price, checkboxes |
|
|
| [sorting.md](search/sorting.md) | Sort by name, date, price |
|
|
| [pagination.md](search/pagination.md) | Page nav, items per page |
|
|
| [empty-state.md](search/empty-state.md) | No results, clear filters |
|
|
|
|
### Forms (6)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [single-step.md](forms/single-step.md) | Simple form submission |
|
|
| [multi-step.md](forms/multi-step.md) | Wizard with progress |
|
|
| [validation.md](forms/validation.md) | Required, format, inline errors |
|
|
| [file-upload.md](forms/file-upload.md) | Single, multiple, drag-drop |
|
|
| [conditional-fields.md](forms/conditional-fields.md) | Show/hide based on selection |
|
|
| [autosave.md](forms/autosave.md) | Draft save, restore |
|
|
|
|
### Dashboard (5)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [data-loading.md](dashboard/data-loading.md) | Loading state, skeleton, data |
|
|
| [chart-rendering.md](dashboard/chart-rendering.md) | Chart visible, tooltips |
|
|
| [date-range-filter.md](dashboard/date-range-filter.md) | Date picker, presets |
|
|
| [export.md](dashboard/export.md) | CSV/PDF download |
|
|
| [realtime-updates.md](dashboard/realtime-updates.md) | Live data, websocket |
|
|
|
|
### Settings (4)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [profile-update.md](settings/profile-update.md) | Name, email, avatar |
|
|
| [password-change.md](settings/password-change.md) | Current + new password |
|
|
| [notification-prefs.md](settings/notification-prefs.md) | Toggle, save prefs |
|
|
| [account-delete.md](settings/account-delete.md) | Confirm deletion |
|
|
|
|
### Onboarding (4)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [registration.md](onboarding/registration.md) | Signup form, validation |
|
|
| [email-verification.md](onboarding/email-verification.md) | Verify link, resend |
|
|
| [welcome-tour.md](onboarding/welcome-tour.md) | Step tour, skip |
|
|
| [first-time-setup.md](onboarding/first-time-setup.md) | Initial config |
|
|
|
|
### Notifications (3)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [in-app.md](notifications/in-app.md) | Badge, dropdown, mark read |
|
|
| [toast-messages.md](notifications/toast-messages.md) | Success/error toasts |
|
|
| [notification-center.md](notifications/notification-center.md) | List, filter, clear |
|
|
|
|
### API Testing (5)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [rest-crud.md](api/rest-crud.md) | GET/POST/PUT/DELETE |
|
|
| [graphql.md](api/graphql.md) | Query, mutation |
|
|
| [auth-headers.md](api/auth-headers.md) | Token, expired, refresh |
|
|
| [error-responses.md](api/error-responses.md) | 400-500 status handling |
|
|
| [rate-limiting.md](api/rate-limiting.md) | Rate limit, retry-after |
|
|
|
|
### Accessibility (3)
|
|
|
|
| Template | Tests |
|
|
|---|---|
|
|
| [keyboard-navigation.md](accessibility/keyboard-navigation.md) | Tab order, focus |
|
|
| [screen-reader.md](accessibility/screen-reader.md) | ARIA labels, live regions |
|
|
| [color-contrast.md](accessibility/color-contrast.md) | Contrast ratios |
|