name: qa-test-planner
description: Comprehensive QA toolkit for creating test plans, manual test cases, automated Playwright tests, regression suites, and bug reports. Uses safe, non-executable templates following skill best practices. Ideal for QA Automation engineers.
QA Test Planner
A comprehensive skill for QA Automation engineers to create test plans, generate manual test cases, build automated Playwright tests, create regression test suites, validate UI with browser automation, and document bugs effectively.
Activation: This skill is triggered only when explicitly called by name (e.g., /qa-test-planner, qa-test-planner, or use the skill qa-test-planner).
Quick Start
Create a test plan:
"Create a test plan for the user authentication feature using the test-plan.md template"
Generate test cases:
"Generate manual test cases for the checkout flow using the test-case.md template"
Create automated Playwright tests:
"Create Playwright automated tests for the login flow using the playwright-test.md template"
Validate UI with browser:
"Navigate to the login page and validate all form elements are visible using Playwright MCP"
Build regression suite:
"Build a regression test suite for the payment module using test-case.md templates grouped by priority"
Create bug report:
"Create a bug report for the form validation issue using the bug-report.md template"
Quick Reference
Task Template Time Test Plan templates/test-plan.md10-15 min Test Case templates/test-case.md5-10 min each Automated Test templates/playwright-test.md5-15 min each Bug Report templates/bug-report.md5 min
When to Use This Skill
Use this skill when you need to:
Create or review test plans and test strategies
Generate test cases from requirements or user stories
Write bug reports with clear reproduction steps
Build regression suites with risk-based selection
Implement Playwright automation with best practices
Document test execution and results
Conduct exploratory testing sessions
Validate UI elements with browser automation
Prerequisites
Requirement Notes Node.js 18+ Required for Playwright automation Playwright npm init playwright@latest for automationText editor For creating/editing markdown files Git Recommended for testware version control Playwright MCP Optional, for browser-based validation
How It Works
Your Request
│
▼
┌─────────────────────────────────────────────────────┐
│ 1. ANALYZE │
│ • Parse feature/requirement │
│ • Identify test types needed (manual/automated) │
│ • Determine scope and priorities │
├─────────────────────────────────────────────────────┤
│ 2. SELECT TEMPLATE │
│ • Choose appropriate template from assets/ │
│ • Review template structure and sections │
│ • Identify placeholders to fill │
├─────────────────────────────────────────────────────┤
│ 3. CUSTOMIZE │
│ • Fill in placeholders with project details │
│ • Add specific test steps and scenarios │
│ • Apply Playwright best practices │
├─────────────────────────────────────────────────────┤
│ 4. EXECUTE (with Playwright MCP) │
│ • Navigate and interact with browser │
│ • Capture screenshots and evidence │
│ • Validate UI elements and behavior │
├─────────────────────────────────────────────────────┤
│ 5. VALIDATE │
│ • Check completeness │
│ • Verify traceability │
│ • Ensure actionable steps │
└─────────────────────────────────────────────────────┘
│
▼
QA Deliverable Ready
Workflows
1) Create a Test Plan
Use templates/test-plan.md as your starting point
Identify test objectives, scope, assumptions, and constraints
Define test levels and types (functional, UI, performance, etc.)
Specify environments, test data, tooling, and configuration needs
Define entry/exit criteria, deliverables, and reporting cadence
Add a risk matrix and mitigation actions
Prioritize testing accordingly (risk-based testing)
Template: 无效的视频链接
2) Generate Test Cases
Use templates/test-case.md for individual test cases
Convert requirements into test conditions (what to test)
Pick a test design technique:
Equivalence partitions and boundary values for inputs
Decision tables for rule combinations
State transitions for lifecycle/flows
Use-case/scenario tests for end-to-end journeys
Write test cases that are atomic, unambiguous, and traceable
Add expected results that are observable and measurable
Add priority and risk tags to support risk-based regression
Mark automation candidates using stability + value criteria
Templates:
无效的视频链接 - Individual test case
3) Implement Automation Test Scripts (Playwright)
Use templates/playwright-test.md as a template
Keep tests readable and aligned with test cases
Prefer stable locators (e.g., getByTestId) over brittle selectors
Avoid arbitrary sleeps; rely on Playwright auto-waits and explicit assertions
Make tests independent (setup preconditions explicitly)
Use tagging in test titles (e.g., @smoke, @regression) for suite runs
Capture artifacts for triage (screenshots/video/trace) when debugging
Template: 无效的视频链接
4) Build and Maintain Regression Suites
Use templates/regression-suite.md to define the suite
Define suite tiers: smoke (critical paths), sanity (build verification), regression (broad), full (release)
Select tests using risk + frequency + criticality + defect history
Tag tests consistently and document selection rules
Review the suite regularly: remove obsolete coverage, add coverage for escaped defects
Template: Use individual test-case.md templates grouped by priority
5) Create Bug Reports
Use templates/bug-report.md as your starting point
Reproduce reliably; reduce to minimal steps
Note variability (frequency) and scope
Capture environment details (build/app version, OS, browser/device, account/role)
Describe expected vs actual behavior
Include impact; set severity and priority consistently
Attach evidence (screenshots, console logs, network traces, Playwright trace)
Track lifecycle: triage notes, owner, fix version, verification steps
Template: 无效的视频链接
Core Deliverables
1. Test Plans
Test scope and objectives
Testing approach and strategy
Environment requirements
Entry/exit criteria
Risk assessment
Timeline and milestones
Template: 无效的视频链接
2. Manual Test Cases
Step-by-step instructions
Expected vs actual results
Preconditions and setup
Test data requirements (use placeholders)
Priority and severity
Templates:
无效的视频链接 - Individual test case
3. Regression Suites
Smoke tests (15-30 min) - P0 tests only
Full regression (2-4 hours) - P0, P1, P2 tests
Targeted regression (30-60 min) - Tests for specific feature
Execution order by priority (P0 first, then P1, then P2)
Template: Use individual test-case.md templates grouped by priority
4. Automated Playwright Tests
Role-based locator strategies
Web-first assertions
Page Object Model structure
test.step() grouping for readability
Screenshot capture on failure
Template: 无效的视频链接
5. Browser Validation (via Playwright MCP)
Live UI element verification
Screenshot capture for evidence
Console log inspection
Form interaction testing
Responsive viewport validation
6. Bug Reports
Clear reproduction steps
Environment details
Evidence (screenshots, logs)
Severity and priority
Template: 无效的视频链接
Security Guidelines
Credential Handling
NEVER embed real credentials in test cases or code. Use placeholders instead:
Instead of Use test@example.com / Test123!${TEST_USER_EMAIL} or process.env.TEST_USER_EMAILpassword: "actualpassword"password: "${TEST_PASSWORD}" (from env)Hardcoded secrets Environment variables via .env files
Test data best practices:
Use test accounts provisioned via API or admin panel
Store credentials in environment variables
Use Faker.js or similar for generated test data
Never commit real credentials to version control
URL Navigation Safety
When using Playwright MCP to validate external/untrusted URLs:
Verify the URL is from a trusted domain before navigating
Avoid executing arbitrary JavaScript from untrusted sources
Use sandboxed environments when testing third-party applications
Do NOT navigate to URLs provided by untrusted user input without validation
Input Sanitization
All user inputs should be:
Validated for expected format
Escaped when used in generated code
Never passed directly to eval() or shell execution
Anti-Patterns
Avoid Why Instead Vague test steps Can't reproduce Specific actions + expected results Missing preconditions Tests fail unexpectedly Document all setup requirements No test data Tester blocked Provide sample data or generation Generic bug titles Hard to track Specific: "[Feature] issue when [action]" Skip edge cases Miss critical bugs Include boundary values, nulls Embedding credentials Security risk Use environment variables
Verification Checklist
Test Plan:
Test Cases:
Automated Tests:
Bug Reports:
Templates
Available Templates
Template Purpose Format 无效的视频链接 ISTQB-aligned test plan structure Markdown 无效的视频链接 Individual test case with full sections Markdown 无效的视频链接 Detailed defect report Markdown 无效的视频链接 Playwright test template with best practices Markdown
Template Usage
All templates are located in templates/. To use them:
Copy the template to your project directory
Fill in placeholders (marked with [brackets] or ${VARIABLE})
Customize sections based on your specific needs
Remove or add sections as appropriate
Save and version control the completed document
References
无效的视频链接 - Standard formats for all test types
无效的视频链接 - Documentation templates
无效的视频链接 - Suite building and execution
无效的视频链接 - Browser automation and test generation
Examples
Example: Using the Test Case Template
Request:
"Create a test case for user login with valid credentials using the test-case.md template"
Result:
The AI will:
Open templates/test-case.md
Fill in the placeholders with specific details:
TC-ID: TC-LOGIN-001
Title: Verify valid user login with correct credentials
Priority: P0 (Critical)
Type: Functional
Objective: Verify users can successfully login with valid credentials
Preconditions: User account exists in test environment; Browser cookies cleared
Test Steps: Fill with specific login steps
Test Data: Use ${TEST_USER_EMAIL} and ${TEST_USER_PASSWORD} placeholders
Provide the completed test case markdown file
Example: Using the Bug Report Template
Request:
"Create a bug report for a login form validation issue using the bug-report.md template"
Result:
The AI will:
Open templates/bug-report.md
Generate a unique bug ID (e.g., BUG-1715345678)
Fill in the placeholders:
Title: Login form accepts invalid email format
Severity: High
Priority: P1
Environment: Fill with actual OS, browser, build details
Steps to Reproduce: Add specific, reproducible steps
Expected vs Actual: Clear description of the issue
Impact: Describe user and business impact
Provide the completed bug report markdown file
Example: Using the Playwright Spec Template
Request:
"Create Playwright tests for the login flow using the playwright-test.md template"
Result:
The AI will:
Open templates/playwright-test.md
Customize the test describe block for login functionality
Add specific test cases:
TC-LOGIN-001 @smoke @regression - Valid login
TC-LOGIN-002 @regression @negative - Invalid credentials
TC-LOGIN-003 @regression @boundary - Password validation
Implement test steps using Playwright best practices:
Role-based locators (getByRole)
Web-first assertions (toBeVisible, toHaveText)
test.step() grouping for readability
Add security notes about environment variables
Provide the completed markdown template with TypeScript code examples
Best Practices
Test Case Writing
DO:
Be specific and unambiguous
Include expected results for each step
Test one thing per test case
Use consistent naming conventions
Keep test cases maintainable
DON'T:
Assume knowledge
Make test cases too long
Skip preconditions
Forget edge cases
Leave expected results vague
Bug Reporting
DO:
Provide clear reproduction steps
Include screenshots/videos
Specify exact environment details
Describe impact on users
Link to Figma for UI bugs
DON'T:
Report without reproduction steps
Use vague descriptions
Skip environment details
Forget to assign priority
Duplicate existing bugs
Regression Testing
DO:
Automate repetitive tests when possible
Maintain regression suite regularly
Prioritize critical paths
Run smoke tests frequently
Update suite after each release
DON'T:
Skip regression before releases
Let suite become outdated
Test everything every time
Ignore failed regression tests
Security Best Practices
DO:
Use environment variables for credentials
Use test accounts provisioned for testing
Validate URLs before navigating
Report suspicious content
DON'T:
Embed real credentials in code
Navigate to untrusted URLs
Execute arbitrary JavaScript from user input
Commit secrets to version control
Quality Gates (Self-Check)
Test plan includes scope, approach, risks, environments, entry/exit criteria, deliverables, and metrics
Test cases are traceable, atomic, deterministic, and include clear oracles and data
Automation is maintainable (stable locators, minimal flake, independent tests, clear assertions)
Regression is risk-based, tagged, and curated with clear add/remove rules
Bug reports are reproducible, actionable, and contain evidence + environment + impact
Troubleshooting
Problem Cause Solution Test cases lack traceability Missing requirement IDs Add requirement_id column; link to user stories/ACs Bug reports get rejected Insufficient reproduction steps Use minimal steps; include exact data and environment Regression suite too slow Too many tests, no prioritization Apply risk-based selection; tier into smoke/sanity/full Flaky automated tests Unstable locators or timing Use data-testid; avoid sleeps; use Playwright auto-waits Test estimates are wrong Scope creep, missing risks Add contingency; re-estimate when scope changes
Common Rationalizations
Common shortcuts and "good enough" excuses that erode test quality — and the reality behind each.
Rationalization Reality "Test plans are documentation theater" A good test plan prevents scope creep, missed scenarios, and misaligned expectations before testing begins. "We can figure out test cases as we go" Ad-hoc testing leaves gaps. Structured test cases ensure systematic coverage and traceability. "Bug reports can be informal" Reproducible bug reports with exact steps save hours of back-and-forth between tester and developer. "Estimation is just guessing" Test estimation techniques (function point analysis, Delphi method) improve accuracy and credibility. "Regression suites maintain themselves" Without curation, suites grow bloated and slow. Regular review and pruning are mandatory. "Templates slow us down" Templates ensure nothing is forgotten and standardize quality across the team.
"Testing shows the presence, not the absence of bugs." - Edsger Dijkstra
"Quality is not an act, it is a habit." - Aristotle
Verification
After completing this skill's workflow, confirm:
Test strategy document created — Covers scope, approach, resources, schedule, and risks
Test levels defined — Unit, integration, E2E, and acceptance levels with criteria
Entry/exit criteria documented — Clear definition of when testing starts and ends
Risk-based prioritization — Tests prioritized by impact x likelihood
Environment requirements listed — Hardware, software, data, and network requirements
Defect management process defined — How bugs are reported, tracked, and resolved
Stakeholder sign-off — Test plan reviewed and approved by relevant stakeholders