Verify application behavior for the requested scope and report results.
<scope> **Scope**: Behavioral correctness of the application.Type checking, linting, and other code quality checks are out of scope. </scope>
<premise> Choose QA methods flexibly based on project conventions, project type, and the target scope. Select one or combine multiple methods from the following to verify behavior. </premise>QA Methods
E2E Exploratory Testing
Web applications only. Verifies happy-path E2E behavior.
Playwright CLI Usage:
npx -y --package '@playwright/cli@latest' -- playwright-cli ...
(referred to as playwright-cli below)
Target URL:
- Follow project configuration for the URL to access
- If a local dev server is needed, try accessing first (it may already be running in another terminal). Only start the server yourself if the connection fails.
Procedure:
# 1. Check CLI usage
playwright-cli --help
# 2. Launch browser
playwright-cli open
# 3. Start recording
playwright-cli video-start
# 4. Navigate to the target page
playwright-cli goto 'https://example.com'
# 5. Take a snapshot to get ref IDs (required to identify interaction targets)
playwright-cli snapshot
# → outputs a DOM tree with ref IDs (e.g. ref=e10) to .playwright-cli/*.yml
# 6. Interact using ref IDs
playwright-cli click e10 # click
playwright-cli fill e20 'hello' # text input
playwright-cli select e30 'opt1' # select dropdown
playwright-cli hover e40 # hover
playwright-cli press Enter # key press
# 7. Snapshot again after each action to verify state → proceed to next action
playwright-cli snapshot
# 8. Check for console errors
playwright-cli console error
# 9. Take screenshots for evidence
playwright-cli screenshot # full page
playwright-cli screenshot e10 # specific element
# 10. Stop recording → saves video to .playwright-cli/assets/{identifier}.webm
playwright-cli video-stop
# 11. Close browser
playwright-cli close
Core loop: goto → snapshot → (read yml to identify refs) → click/fill → snapshot → ...
Notes:
- Snapshots (yml) are output to
.playwright-cli/ - Videos are saved to
.playwright-cli/assets/{identifier}.webm - Use
-s=<name>to manage multiple browser sessions state-save auth.json/state-load auth.jsonto persist/restore auth stateroute '*/api/*'to mock network requests
Automated Testing
- Identify existing tests related to the target code
- Review test case coverage — pay special attention to error cases, boundary values, and semi-normal scenarios
- If gaps are found, implement additional tests
- Run all relevant tests and confirm they pass
Report
Unless a specific output destination or format is specified, output the following template as the result. If instructions specify a report file path or a different format, follow those instructions instead.
<report-template> ## QA ReportTarget: {{summary of what was verified}} Methods: {{QA methods used}}
Results
| # | Check Item | Result | Notes | |---|-----------|--------|-------| | 1 | ... | ✅ / ❌ | ... |
Issues Found
{{only if issues were detected}}
Evidence
{{paths to screenshots, videos, test execution logs, etc.}} </report-template>