Playwright QA
Purpose
Automated visual QA testing for web applications. Uses Playwright to launch a headless browser, navigate the app like a real user, take screenshots, check for console/network errors, test interactive elements, verify responsive layouts, and identify visual bugs — then fix them automatically.
Routing
- Use when: Any web app task that mentions testing, catching bugs, verifying it works, shipping, or quality — even without explicitly mentioning Playwright or visual QA. Also use when the user builds a web app and the implicit expectation is that it should work.
- Do not use when: The task is purely about unit tests, API testing, non-web application testing, or native mobile app testing.
- Outputs: QA report with checks (passed/failed), issues categorized by severity, screenshots, and interaction log.
- Success criteria: All checks pass, or issues are identified with clear descriptions and auto-fixed where possible.
Trigger Examples
Positive
- Build a todo app in React, test it to catch any bugs before shipping
- Build a dashboard and make sure it works
- Create a landing page and verify everything looks right
- Build this web app and ship it bug-free
- Make a React app, test it
- Build a weather app and check for issues
- Create the app and QA it
- Build and test the frontend
- Does the app work?
- Test this web app with Playwright
- Run visual QA on localhost:3000
- Check my site for bugs
- Do automated browser testing
- Verify the UI works
- Screenshot and test the web app
- Find visual bugs in my project
- Test the app like a real user
- QA the frontend
- Run Playwright tests
- Make sure it works before we ship
Negative
- Write unit tests with Jest
- Run jest/vitest tests
- Test the API endpoints with curl
- Do load testing with k6
- This is a native iOS/Android app
- Run backend unit tests
Parameters
| Name |
Type |
Required |
Description |
| url |
string |
No |
Target URL to test (defaults to http://localhost:3000) |
| server_command |
string |
No |
Command to start the dev server (e.g., "npm run dev") |
| checks |
string |
No |
Comma-separated list of checks: visual_snapshot, console_errors, network_errors, interaction_test, responsive_check, accessibility_check, performance_check |
Runtime Prompt
You are running automated visual QA on a web application using Playwright.
Workflow:
Install dependencies (if project was just scaffolded):
- If the project has a
package.json but no node_modules, run npm install (or yarn/pnpm install) via run_command first.
- NEVER skip this step for a freshly created project —
npm run dev will fail without it.
Start the dev server (if not already running):
- Use
qa_run with server_command to start it automatically, OR
- Use
run_command to start the server manually if needed
Run full QA pipeline:
- Call
qa_run with the target URL and enabled checks
- This will automatically: launch browser, navigate, check console errors, check network errors, take visual snapshots, and test interactive elements
Review results:
- Check the QA report for any issues
- Issues are categorized as critical, major, or minor
Fix issues (if auto_fix is enabled):
- For each critical/major issue, fix the code
- Re-run
qa_run to verify the fix
- Repeat until all critical/major issues are resolved
Manual testing (for specific flows):
- Use
qa_navigate to go to specific pages
- Use
qa_interact to test user flows (click buttons, fill forms, hover elements)
- Use
qa_screenshot to capture state at key points
- Use
qa_check to run specific checks
Cleanup:
- Always call
qa_cleanup when done
Key tools:
qa_run — Full automated pipeline (recommended starting point)
qa_navigate — Navigate to a URL
qa_interact — Click, fill, hover, scroll
qa_screenshot — Take a screenshot with diagnostics
qa_check — Run a specific check
qa_report — Get current run report
qa_cleanup — Tear down browser and server
Best practices:
- Always start with
qa_run for a comprehensive first pass
- Fix critical issues before minor ones
- Re-run after fixes to verify
- Use
qa_interact for specific user flow testing
- Take screenshots at key interaction points
- Check both desktop and mobile viewports
1---2name: playwright-qa3description: Automated visual QA testing using Playwright — navigate web apps like a real user, capture screenshots, find bugs, and fix them.4---56# Playwright QA78## Purpose910Automated visual QA testing for web applications. Uses Playwright to launch a headless browser, navigate the app like a real user, take screenshots, check for console/network errors, test interactive elements, verify responsive layouts, and identify visual bugs — then fix them automatically.1112## Routing1314- Use when: Any web app task that mentions testing, catching bugs, verifying it works, shipping, or quality — even without explicitly mentioning Playwright or visual QA. Also use when the user builds a web app and the implicit expectation is that it should work.15- Do not use when: The task is purely about unit tests, API testing, non-web application testing, or native mobile app testing.16- Outputs: QA report with checks (passed/failed), issues categorized by severity, screenshots, and interaction log.17- Success criteria: All checks pass, or issues are identified with clear descriptions and auto-fixed where possible.1819## Trigger Examples2021### Positive2223- Build a todo app in React, test it to catch any bugs before shipping24- Build a dashboard and make sure it works25- Create a landing page and verify everything looks right26- Build this web app and ship it bug-free27- Make a React app, test it28- Build a weather app and check for issues29- Create the app and QA it30- Build and test the frontend31- Does the app work?32- Test this web app with Playwright33- Run visual QA on localhost:300034- Check my site for bugs35- Do automated browser testing36- Verify the UI works37- Screenshot and test the web app38- Find visual bugs in my project39- Test the app like a real user40- QA the frontend41- Run Playwright tests42- Make sure it works before we ship4344### Negative4546- Write unit tests with Jest47- Run jest/vitest tests48- Test the API endpoints with curl49- Do load testing with k650- This is a native iOS/Android app51- Run backend unit tests5253## Parameters5455| Name | Type | Required | Description |56|---|---|---|---|57| url | string | No | Target URL to test (defaults to http://localhost:3000) |58| server_command | string | No | Command to start the dev server (e.g., "npm run dev") |59| checks | string | No | Comma-separated list of checks: visual_snapshot, console_errors, network_errors, interaction_test, responsive_check, accessibility_check, performance_check |6061## Runtime Prompt6263You are running automated visual QA on a web application using Playwright.6465**Workflow:**66671. **Install dependencies** (if project was just scaffolded):68 - If the project has a `package.json` but no `node_modules`, run `npm install` (or `yarn`/`pnpm install`) via `run_command` first.69 - NEVER skip this step for a freshly created project — `npm run dev` will fail without it.70712. **Start the dev server** (if not already running):72 - Use `qa_run` with `server_command` to start it automatically, OR73 - Use `run_command` to start the server manually if needed74753. **Run full QA pipeline**:76 - Call `qa_run` with the target URL and enabled checks77 - This will automatically: launch browser, navigate, check console errors, check network errors, take visual snapshots, and test interactive elements78794. **Review results**:80 - Check the QA report for any issues81 - Issues are categorized as critical, major, or minor82835. **Fix issues** (if auto_fix is enabled):84 - For each critical/major issue, fix the code85 - Re-run `qa_run` to verify the fix86 - Repeat until all critical/major issues are resolved87886. **Manual testing** (for specific flows):89 - Use `qa_navigate` to go to specific pages90 - Use `qa_interact` to test user flows (click buttons, fill forms, hover elements)91 - Use `qa_screenshot` to capture state at key points92 - Use `qa_check` to run specific checks93947. **Cleanup**:95 - Always call `qa_cleanup` when done9697**Key tools:**98- `qa_run` — Full automated pipeline (recommended starting point)99- `qa_navigate` — Navigate to a URL100- `qa_interact` — Click, fill, hover, scroll101- `qa_screenshot` — Take a screenshot with diagnostics102- `qa_check` — Run a specific check103- `qa_report` — Get current run report104- `qa_cleanup` — Tear down browser and server105106**Best practices:**107- Always start with `qa_run` for a comprehensive first pass108- Fix critical issues before minor ones109- Re-run after fixes to verify110- Use `qa_interact` for specific user flow testing111- Take screenshots at key interaction points112- Check both desktop and mobile viewports