Initial commit
This commit is contained in:
869
skills/qa-test-planner/SKILL.md
Normal file
869
skills/qa-test-planner/SKILL.md
Normal file
@@ -0,0 +1,869 @@
|
||||
---
|
||||
name: qa-test-planner
|
||||
description: Generate comprehensive test plans, manual test cases, regression test suites, and bug reports for QA engineers. Includes Figma MCP integration for design validation.
|
||||
---
|
||||
|
||||
# QA Test Planner
|
||||
|
||||
A comprehensive skill for QA engineers to create test plans, generate manual test cases, build regression test suites, validate designs against Figma, and document bugs effectively.
|
||||
|
||||
## What This Skill Does
|
||||
|
||||
Helps QA engineers with:
|
||||
- **Test Plan Creation** - Comprehensive test strategy and planning
|
||||
- **Manual Test Case Generation** - Detailed step-by-step test cases
|
||||
- **Regression Test Suites** - Critical path and smoke test suites
|
||||
- **Figma Design Validation** - Compare implementation against designs (requires Figma MCP)
|
||||
- **Bug Report Templates** - Clear, reproducible bug documentation
|
||||
- **Test Coverage Analysis** - Identify gaps in testing
|
||||
- **Test Execution Tracking** - Monitor testing progress
|
||||
|
||||
## Why You Need This Skill
|
||||
|
||||
**Without structured testing:**
|
||||
- Inconsistent test coverage
|
||||
- Missed edge cases
|
||||
- Poor bug documentation
|
||||
- No regression safety net
|
||||
- Design implementation gaps
|
||||
- Unclear test strategy
|
||||
|
||||
**With this skill:**
|
||||
- Comprehensive test coverage
|
||||
- Repeatable test cases
|
||||
- Systematic regression testing
|
||||
- Design-implementation validation
|
||||
- Professional bug reports
|
||||
- Clear testing roadmap
|
||||
|
||||
## Core Components
|
||||
|
||||
### 1. Test Plan Generator
|
||||
- Test scope and objectives
|
||||
- Testing approach and strategy
|
||||
- Test environment requirements
|
||||
- Entry/exit criteria
|
||||
- Risk assessment
|
||||
- Resource allocation
|
||||
- Timeline and milestones
|
||||
|
||||
### 2. Manual Test Case Generator
|
||||
- Step-by-step instructions
|
||||
- Expected vs actual results
|
||||
- Preconditions and setup
|
||||
- Test data requirements
|
||||
- Priority and severity
|
||||
- Edge case identification
|
||||
|
||||
### 3. Regression Test Suite Builder
|
||||
- Smoke test cases
|
||||
- Critical path testing
|
||||
- Integration test scenarios
|
||||
- Backward compatibility checks
|
||||
- Performance regression tests
|
||||
|
||||
### 4. Figma Design Validation (with MCP)
|
||||
- Compare UI implementation to designs
|
||||
- Identify visual discrepancies
|
||||
- Validate spacing, colors, typography
|
||||
- Check component consistency
|
||||
- Flag design-dev mismatches
|
||||
|
||||
### 5. Bug Report Generator
|
||||
- Clear reproduction steps
|
||||
- Environment details
|
||||
- Expected vs actual behavior
|
||||
- Screenshots and evidence
|
||||
- Severity and priority
|
||||
- Related test cases
|
||||
|
||||
## Test Case Structure
|
||||
|
||||
### Standard Test Case Format
|
||||
|
||||
```markdown
|
||||
## TC-001: [Test Case Title]
|
||||
|
||||
**Priority:** High | Medium | Low
|
||||
**Type:** Functional | UI | Integration | Regression
|
||||
**Status:** Not Run | Pass | Fail | Blocked
|
||||
|
||||
### Objective
|
||||
[What are we testing and why]
|
||||
|
||||
### Preconditions
|
||||
- [Setup requirement 1]
|
||||
- [Setup requirement 2]
|
||||
- [Test data needed]
|
||||
|
||||
### Test Steps
|
||||
1. [Action to perform]
|
||||
**Expected:** [What should happen]
|
||||
|
||||
2. [Action to perform]
|
||||
**Expected:** [What should happen]
|
||||
|
||||
3. [Action to perform]
|
||||
**Expected:** [What should happen]
|
||||
|
||||
### Test Data
|
||||
- Input: [Test data values]
|
||||
- User: [Test account details]
|
||||
- Configuration: [Environment settings]
|
||||
|
||||
### Post-conditions
|
||||
- [System state after test]
|
||||
- [Cleanup required]
|
||||
|
||||
### Notes
|
||||
- [Edge cases to consider]
|
||||
- [Related test cases]
|
||||
- [Known issues]
|
||||
```
|
||||
|
||||
## Test Plan Template
|
||||
|
||||
### Executive Summary
|
||||
- Feature/product being tested
|
||||
- Testing objectives
|
||||
- Key risks
|
||||
- Timeline overview
|
||||
|
||||
### Test Scope
|
||||
|
||||
**In Scope:**
|
||||
- Features to be tested
|
||||
- Test types (functional, UI, performance, etc.)
|
||||
- Platforms and environments
|
||||
- User flows and scenarios
|
||||
|
||||
**Out of Scope:**
|
||||
- Features not being tested (deferred)
|
||||
- Known limitations
|
||||
- Third-party integrations (if applicable)
|
||||
|
||||
### Test Strategy
|
||||
|
||||
**Test Types:**
|
||||
- Manual testing
|
||||
- Exploratory testing
|
||||
- Regression testing
|
||||
- Integration testing
|
||||
- User acceptance testing
|
||||
- Performance testing (if applicable)
|
||||
|
||||
**Test Approach:**
|
||||
- Black box testing
|
||||
- Positive and negative testing
|
||||
- Boundary value analysis
|
||||
- Equivalence partitioning
|
||||
|
||||
### Test Environment
|
||||
- Operating systems
|
||||
- Browsers and versions
|
||||
- Devices (mobile, tablet, desktop)
|
||||
- Test data requirements
|
||||
- Backend/API environments
|
||||
|
||||
### Entry Criteria
|
||||
- [ ] Requirements documented
|
||||
- [ ] Designs finalized
|
||||
- [ ] Test environment ready
|
||||
- [ ] Test data prepared
|
||||
- [ ] Build deployed to test environment
|
||||
|
||||
### Exit Criteria
|
||||
- [ ] All high-priority test cases executed
|
||||
- [ ] 90%+ test case pass rate
|
||||
- [ ] All critical bugs fixed
|
||||
- [ ] No open high-severity bugs
|
||||
- [ ] Regression suite passed
|
||||
- [ ] Stakeholder sign-off
|
||||
|
||||
### Risk Assessment
|
||||
|
||||
| Risk | Probability | Impact | Mitigation |
|
||||
|------|-------------|--------|------------|
|
||||
| [Risk 1] | High/Med/Low | High/Med/Low | [How to mitigate] |
|
||||
| [Risk 2] | High/Med/Low | High/Med/Low | [How to mitigate] |
|
||||
|
||||
### Test Deliverables
|
||||
- Test plan document
|
||||
- Test cases
|
||||
- Test execution reports
|
||||
- Bug reports
|
||||
- Test summary report
|
||||
|
||||
## Test Types and Approaches
|
||||
|
||||
### 1. Functional Testing
|
||||
|
||||
**What:** Verify features work as specified
|
||||
|
||||
**Test Cases:**
|
||||
- Happy path scenarios
|
||||
- Error handling
|
||||
- Input validation
|
||||
- Business logic
|
||||
- Data integrity
|
||||
|
||||
**Example:**
|
||||
```
|
||||
TC: User Login with Valid Credentials
|
||||
1. Navigate to login page
|
||||
2. Enter valid email and password
|
||||
3. Click "Login" button
|
||||
Expected: User redirected to dashboard, welcome message shown
|
||||
```
|
||||
|
||||
### 2. UI/Visual Testing
|
||||
|
||||
**What:** Verify visual appearance and layout
|
||||
|
||||
**Test Cases:**
|
||||
- Layout and alignment
|
||||
- Responsive design
|
||||
- Color and typography
|
||||
- Component states (hover, active, disabled)
|
||||
- Cross-browser compatibility
|
||||
|
||||
**With Figma MCP:**
|
||||
- Compare implementation to Figma designs
|
||||
- Verify spacing (padding, margins)
|
||||
- Check font sizes and weights
|
||||
- Validate color values
|
||||
- Ensure icon accuracy
|
||||
|
||||
**Example:**
|
||||
```
|
||||
TC: Homepage Hero Section Visual Validation
|
||||
1. Open homepage in browser
|
||||
2. Compare against Figma design [link]
|
||||
3. Verify:
|
||||
- Heading font: 48px, bold, #1A1A1A
|
||||
- CTA button: 16px padding, #0066FF background
|
||||
- Image aspect ratio: 16:9
|
||||
- Spacing: 64px margin-bottom
|
||||
Expected: All visual elements match Figma exactly
|
||||
```
|
||||
|
||||
### 3. Regression Testing
|
||||
|
||||
**What:** Ensure existing functionality still works
|
||||
|
||||
**When to Run:**
|
||||
- Before each release
|
||||
- After bug fixes
|
||||
- After new features
|
||||
- Weekly smoke tests
|
||||
|
||||
**Suite Components:**
|
||||
- Smoke tests (critical paths)
|
||||
- Full regression (comprehensive)
|
||||
- Targeted regression (affected areas)
|
||||
|
||||
**Example:**
|
||||
```
|
||||
Regression Suite: User Authentication
|
||||
- Login with valid credentials
|
||||
- Login with invalid credentials
|
||||
- Password reset flow
|
||||
- Session timeout handling
|
||||
- Multi-device login
|
||||
- Social login (Google, GitHub)
|
||||
```
|
||||
|
||||
### 4. Integration Testing
|
||||
|
||||
**What:** Verify different components work together
|
||||
|
||||
**Test Cases:**
|
||||
- API integration
|
||||
- Database operations
|
||||
- Third-party services
|
||||
- Cross-module interactions
|
||||
- Data flow between components
|
||||
|
||||
**Example:**
|
||||
```
|
||||
TC: Checkout Payment Integration
|
||||
1. Add item to cart
|
||||
2. Proceed to checkout
|
||||
3. Enter payment details (Stripe)
|
||||
4. Submit payment
|
||||
Expected:
|
||||
- Payment processed via Stripe API
|
||||
- Order created in database
|
||||
- Confirmation email sent
|
||||
- Inventory updated
|
||||
```
|
||||
|
||||
### 5. Exploratory Testing
|
||||
|
||||
**What:** Unscripted, creative testing
|
||||
|
||||
**Approach:**
|
||||
- Charter-based exploration
|
||||
- User persona simulation
|
||||
- Edge case discovery
|
||||
- Usability evaluation
|
||||
|
||||
**Session Template:**
|
||||
```
|
||||
Exploratory Testing Session
|
||||
Charter: Explore [feature] as [user type]
|
||||
Time: 60 minutes
|
||||
Focus: [Area to explore]
|
||||
|
||||
Findings:
|
||||
- [Bug/issue discovered]
|
||||
- [UX concern]
|
||||
- [Improvement suggestion]
|
||||
|
||||
Follow-up:
|
||||
- [Test cases to create]
|
||||
- [Bugs to file]
|
||||
```
|
||||
|
||||
## Figma MCP Integration
|
||||
|
||||
### Design Validation Workflow
|
||||
|
||||
**Prerequisites:**
|
||||
- Figma MCP server configured
|
||||
- Design file access
|
||||
- Figma URLs available
|
||||
|
||||
**Validation Process:**
|
||||
|
||||
1. **Get Design Specs from Figma**
|
||||
```
|
||||
"Get the button specifications from Figma file [URL]"
|
||||
- Component: Primary Button
|
||||
- Width: 120px
|
||||
- Height: 40px
|
||||
- Border-radius: 8px
|
||||
- Background: #0066FF
|
||||
- Font: 16px, Medium, #FFFFFF
|
||||
```
|
||||
|
||||
2. **Compare Implementation**
|
||||
```
|
||||
TC: Primary Button Visual Validation
|
||||
1. Inspect primary button in browser dev tools
|
||||
2. Compare against Figma specs:
|
||||
- Dimensions: 120x40px ✓ / ✗
|
||||
- Border-radius: 8px ✓ / ✗
|
||||
- Background color: #0066FF ✓ / ✗
|
||||
- Font: 16px Medium #FFFFFF ✓ / ✗
|
||||
3. Document discrepancies
|
||||
```
|
||||
|
||||
3. **Create Bug if Mismatch**
|
||||
```
|
||||
BUG: Primary button color doesn't match design
|
||||
Severity: Medium
|
||||
Expected (Figma): #0066FF
|
||||
Actual (Implementation): #0052CC
|
||||
Screenshot: [attached]
|
||||
Figma link: [specific component]
|
||||
```
|
||||
|
||||
### Design-Dev Handoff Checklist
|
||||
|
||||
**Using Figma MCP:**
|
||||
- [ ] Retrieve spacing values from design
|
||||
- [ ] Verify color palette matches
|
||||
- [ ] Check typography specifications
|
||||
- [ ] Validate component states (hover, active, disabled)
|
||||
- [ ] Confirm breakpoint behavior
|
||||
- [ ] Review iconography and assets
|
||||
- [ ] Check accessibility annotations
|
||||
|
||||
## Bug Reporting Best Practices
|
||||
|
||||
### Effective Bug Report Template
|
||||
|
||||
```markdown
|
||||
# BUG-[ID]: [Clear, specific title]
|
||||
|
||||
**Severity:** Critical | High | Medium | Low
|
||||
**Priority:** P0 | P1 | P2 | P3
|
||||
**Type:** Functional | UI | Performance | Security
|
||||
**Status:** Open | In Progress | Fixed | Closed
|
||||
|
||||
## Environment
|
||||
- **OS:** [Windows 11, macOS 14, etc.]
|
||||
- **Browser:** [Chrome 120, Firefox 121, etc.]
|
||||
- **Device:** [Desktop, iPhone 15, etc.]
|
||||
- **Build:** [Version/commit]
|
||||
- **URL:** [Page where bug occurs]
|
||||
|
||||
## Description
|
||||
[Clear, concise description of the issue]
|
||||
|
||||
## Steps to Reproduce
|
||||
1. [Specific step]
|
||||
2. [Specific step]
|
||||
3. [Specific step]
|
||||
|
||||
## Expected Behavior
|
||||
[What should happen]
|
||||
|
||||
## Actual Behavior
|
||||
[What actually happens]
|
||||
|
||||
## Visual Evidence
|
||||
- Screenshot: [attached]
|
||||
- Video: [link if applicable]
|
||||
- Console errors: [paste errors]
|
||||
- Network logs: [if relevant]
|
||||
|
||||
## Impact
|
||||
- **User Impact:** [How many users affected]
|
||||
- **Frequency:** [Always, Sometimes, Rarely]
|
||||
- **Workaround:** [If one exists]
|
||||
|
||||
## Additional Context
|
||||
- Related to: [Feature/ticket]
|
||||
- First noticed: [When]
|
||||
- Regression: [Yes/No - if yes, since when]
|
||||
- Figma design: [Link if UI bug]
|
||||
|
||||
## Test Cases Affected
|
||||
- TC-001: [Test case that failed]
|
||||
- TC-045: [Related test case]
|
||||
```
|
||||
|
||||
### Bug Severity Definitions
|
||||
|
||||
**Critical (P0):**
|
||||
- System crash or data loss
|
||||
- Security vulnerability
|
||||
- Complete feature breakdown
|
||||
- Blocks release
|
||||
|
||||
**High (P1):**
|
||||
- Major feature not working
|
||||
- Significant user impact
|
||||
- No workaround available
|
||||
- Should fix before release
|
||||
|
||||
**Medium (P2):**
|
||||
- Feature partially working
|
||||
- Workaround available
|
||||
- Minor user inconvenience
|
||||
- Can ship with fix in next release
|
||||
|
||||
**Low (P3):**
|
||||
- Cosmetic issues
|
||||
- Rare edge cases
|
||||
- Minimal impact
|
||||
- Nice to have fixed
|
||||
|
||||
## Test Coverage Analysis
|
||||
|
||||
### Coverage Metrics
|
||||
|
||||
**Feature Coverage:**
|
||||
```
|
||||
Total Features: 25
|
||||
Tested: 23
|
||||
Not Tested: 2
|
||||
Coverage: 92%
|
||||
```
|
||||
|
||||
**Requirement Coverage:**
|
||||
```
|
||||
Total Requirements: 150
|
||||
With Test Cases: 142
|
||||
Without Test Cases: 8
|
||||
Coverage: 95%
|
||||
```
|
||||
|
||||
**Risk Coverage:**
|
||||
```
|
||||
High-Risk Areas: 12
|
||||
Tested: 12
|
||||
Medium-Risk: 35
|
||||
Tested: 30
|
||||
```
|
||||
|
||||
### Coverage Matrix
|
||||
|
||||
| Feature | Requirements | Test Cases | Status | Gaps |
|
||||
|---------|--------------|------------|--------|------|
|
||||
| Login | 8 | 12 | ✓ Complete | None |
|
||||
| Checkout | 15 | 10 | ⚠ Partial | Payment errors |
|
||||
| Dashboard | 12 | 15 | ✓ Complete | None |
|
||||
|
||||
## Regression Test Suite Structure
|
||||
|
||||
### Smoke Test Suite (15-30 min)
|
||||
**Run:** Before every test cycle, daily builds
|
||||
|
||||
**Critical Paths:**
|
||||
- User login/logout
|
||||
- Core user flow (e.g., create order)
|
||||
- Navigation and routing
|
||||
- API health checks
|
||||
- Database connectivity
|
||||
|
||||
**Example:**
|
||||
```
|
||||
SMOKE-001: Critical User Flow
|
||||
1. Login as standard user
|
||||
2. Navigate to main feature
|
||||
3. Perform primary action
|
||||
4. Verify success message
|
||||
5. Logout
|
||||
Expected: All steps complete without errors
|
||||
```
|
||||
|
||||
### Full Regression Suite (2-4 hours)
|
||||
**Run:** Weekly, before releases
|
||||
|
||||
**Coverage:**
|
||||
- All functional test cases
|
||||
- Integration scenarios
|
||||
- UI validation
|
||||
- Cross-browser checks
|
||||
- Data integrity tests
|
||||
|
||||
### Targeted Regression (30-60 min)
|
||||
**Run:** After bug fixes, feature updates
|
||||
|
||||
**Coverage:**
|
||||
- Affected feature area
|
||||
- Related components
|
||||
- Integration points
|
||||
- Previously failed tests
|
||||
|
||||
## Test Execution Tracking
|
||||
|
||||
### Test Run Template
|
||||
|
||||
```markdown
|
||||
# Test Run: [Release Version]
|
||||
|
||||
**Date:** 2024-01-15
|
||||
**Build:** v2.5.0-rc1
|
||||
**Tester:** [Name]
|
||||
**Environment:** Staging
|
||||
|
||||
## Summary
|
||||
- Total Test Cases: 150
|
||||
- Executed: 145
|
||||
- Passed: 130
|
||||
- Failed: 10
|
||||
- Blocked: 5
|
||||
- Not Run: 5
|
||||
- Pass Rate: 90%
|
||||
|
||||
## Test Cases by Priority
|
||||
|
||||
| Priority | Total | Pass | Fail | Blocked |
|
||||
|----------|-------|------|------|---------|
|
||||
| P0 (Critical) | 25 | 23 | 2 | 0 |
|
||||
| P1 (High) | 50 | 45 | 3 | 2 |
|
||||
| P2 (Medium) | 50 | 45 | 3 | 2 |
|
||||
| P3 (Low) | 25 | 17 | 2 | 1 |
|
||||
|
||||
## Failures
|
||||
|
||||
### Critical Failures
|
||||
- TC-045: Payment processing fails
|
||||
- Bug: BUG-234
|
||||
- Status: Open
|
||||
|
||||
### High Priority Failures
|
||||
- TC-089: Email notification not sent
|
||||
- Bug: BUG-235
|
||||
- Status: In Progress
|
||||
|
||||
## Blocked Tests
|
||||
- TC-112: Dashboard widget (API endpoint down)
|
||||
- TC-113: Export feature (dependency not deployed)
|
||||
|
||||
## Risks
|
||||
- 2 critical bugs blocking release
|
||||
- Payment integration needs attention
|
||||
- Email service intermittent
|
||||
|
||||
## Next Steps
|
||||
- Retest after BUG-234 fix
|
||||
- Complete remaining 5 test cases
|
||||
- Run full regression before sign-off
|
||||
```
|
||||
|
||||
## Using This Skill
|
||||
|
||||
### Generate Test Plan
|
||||
|
||||
```bash
|
||||
./scripts/generate_test_plan.sh
|
||||
```
|
||||
|
||||
Interactive workflow for creating comprehensive test plans.
|
||||
|
||||
### Generate Manual Test Cases
|
||||
|
||||
```bash
|
||||
./scripts/generate_test_cases.sh
|
||||
```
|
||||
|
||||
Create manual test cases for features with step-by-step instructions.
|
||||
|
||||
### Build Regression Suite
|
||||
|
||||
```bash
|
||||
./scripts/build_regression_suite.sh
|
||||
```
|
||||
|
||||
Create smoke and regression test suites.
|
||||
|
||||
### Validate Design with Figma
|
||||
|
||||
**With Figma MCP configured:**
|
||||
```
|
||||
"Compare the login page implementation against the Figma design at [URL] and generate test cases for visual validation"
|
||||
```
|
||||
|
||||
### Create Bug Report
|
||||
|
||||
```bash
|
||||
./scripts/create_bug_report.sh
|
||||
```
|
||||
|
||||
Generate structured bug reports with all required details.
|
||||
|
||||
### Access Templates
|
||||
|
||||
```
|
||||
references/test_case_templates.md - Various test case formats
|
||||
references/bug_report_templates.md - Bug documentation templates
|
||||
references/regression_testing.md - Regression testing guide
|
||||
references/figma_validation.md - Design validation with Figma MCP
|
||||
```
|
||||
|
||||
## QA Process Workflow
|
||||
|
||||
### 1. Planning Phase
|
||||
- [ ] Review requirements and designs
|
||||
- [ ] Create test plan
|
||||
- [ ] Identify test scenarios
|
||||
- [ ] Estimate effort and timeline
|
||||
- [ ] Set up test environment
|
||||
|
||||
### 2. Test Design Phase
|
||||
- [ ] Write test cases
|
||||
- [ ] Review test cases with team
|
||||
- [ ] Prepare test data
|
||||
- [ ] Build regression suite
|
||||
- [ ] Get Figma design access
|
||||
|
||||
### 3. Test Execution Phase
|
||||
- [ ] Execute test cases
|
||||
- [ ] Log bugs with clear reproduction steps
|
||||
- [ ] Validate against Figma designs (UI tests)
|
||||
- [ ] Track test progress
|
||||
- [ ] Communicate blockers
|
||||
|
||||
### 4. Reporting Phase
|
||||
- [ ] Compile test results
|
||||
- [ ] Analyze coverage
|
||||
- [ ] Document risks
|
||||
- [ ] Provide go/no-go recommendation
|
||||
- [ ] Archive test artifacts
|
||||
|
||||
## 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
|
||||
|
||||
## Figma MCP Setup
|
||||
|
||||
### Configuration
|
||||
|
||||
**Install Figma MCP server:**
|
||||
```bash
|
||||
# Follow Figma MCP installation instructions
|
||||
# Configure with your Figma API token
|
||||
# Set file access permissions
|
||||
```
|
||||
|
||||
**Usage in test planning:**
|
||||
```
|
||||
"Analyze the Figma design file at [URL] and generate visual validation test cases for:
|
||||
- Color scheme compliance
|
||||
- Typography specifications
|
||||
- Component spacing
|
||||
- Responsive breakpoints
|
||||
- Interactive states"
|
||||
```
|
||||
|
||||
**Example queries:**
|
||||
```
|
||||
"Get button specifications from Figma design [URL]"
|
||||
"Compare navigation menu implementation against Figma design"
|
||||
"Extract spacing values for dashboard layout from Figma"
|
||||
"List all color tokens used in Figma design system"
|
||||
```
|
||||
|
||||
## Test Case Examples
|
||||
|
||||
### Example 1: Login Flow
|
||||
|
||||
```markdown
|
||||
## TC-LOGIN-001: Valid User Login
|
||||
|
||||
**Priority:** P0 (Critical)
|
||||
**Type:** Functional
|
||||
**Estimated Time:** 2 minutes
|
||||
|
||||
### Objective
|
||||
Verify users can successfully login with valid credentials
|
||||
|
||||
### Preconditions
|
||||
- User account exists (test@example.com / Test123!)
|
||||
- User is not already logged in
|
||||
- Browser cookies cleared
|
||||
|
||||
### Test Steps
|
||||
1. Navigate to https://app.example.com/login
|
||||
**Expected:** Login page displays with email and password fields
|
||||
|
||||
2. Enter email: test@example.com
|
||||
**Expected:** Email field accepts input
|
||||
|
||||
3. Enter password: Test123!
|
||||
**Expected:** Password field shows masked characters
|
||||
|
||||
4. Click "Login" button
|
||||
**Expected:**
|
||||
- Loading indicator appears
|
||||
- User redirected to /dashboard
|
||||
- Welcome message shown: "Welcome back, Test User"
|
||||
- Avatar/profile image displayed in header
|
||||
|
||||
### Post-conditions
|
||||
- User session created
|
||||
- Auth token stored
|
||||
- Analytics event logged
|
||||
|
||||
### Visual Validation (with Figma)
|
||||
- Compare dashboard layout against Figma design [link]
|
||||
- Verify welcome message typography: 24px, Medium, #1A1A1A
|
||||
- Check avatar size: 40x40px, border-radius 50%
|
||||
|
||||
### Edge Cases to Consider
|
||||
- TC-LOGIN-002: Invalid password
|
||||
- TC-LOGIN-003: Non-existent email
|
||||
- TC-LOGIN-004: SQL injection attempt
|
||||
- TC-LOGIN-005: Very long password
|
||||
```
|
||||
|
||||
### Example 2: Responsive Design Validation
|
||||
|
||||
```markdown
|
||||
## TC-UI-045: Mobile Navigation Menu
|
||||
|
||||
**Priority:** P1 (High)
|
||||
**Type:** UI/Responsive
|
||||
**Devices:** Mobile (iPhone, Android)
|
||||
|
||||
### Objective
|
||||
Verify navigation menu works correctly on mobile devices
|
||||
|
||||
### Preconditions
|
||||
- Access from mobile device or responsive mode
|
||||
- Viewport width: 375px (iPhone SE) to 428px (iPhone Pro Max)
|
||||
|
||||
### Test Steps
|
||||
1. Open homepage on mobile device
|
||||
**Expected:** Hamburger menu icon visible (top-right)
|
||||
|
||||
2. Tap hamburger icon
|
||||
**Expected:**
|
||||
- Menu slides in from right
|
||||
- Overlay appears over content
|
||||
- Close (X) button visible
|
||||
|
||||
3. Tap menu item
|
||||
**Expected:** Navigate to section, menu closes
|
||||
|
||||
4. Compare against Figma mobile design [link]
|
||||
**Expected:**
|
||||
- Menu width: 280px
|
||||
- Slide animation: 300ms ease-out
|
||||
- Overlay opacity: 0.5, color #000000
|
||||
- Font size: 16px, line-height 24px
|
||||
|
||||
### Breakpoints to Test
|
||||
- 375px (iPhone SE)
|
||||
- 390px (iPhone 14)
|
||||
- 428px (iPhone 14 Pro Max)
|
||||
- 360px (Galaxy S21)
|
||||
```
|
||||
|
||||
## Summary
|
||||
|
||||
This QA Test Planner skill provides:
|
||||
- **Structured test planning** - Comprehensive test strategies
|
||||
- **Manual test case generation** - Detailed, repeatable tests
|
||||
- **Regression testing** - Protect against breaking changes
|
||||
- **Figma validation** - Design-implementation verification
|
||||
- **Bug documentation** - Clear, actionable reports
|
||||
- **Coverage analysis** - Identify testing gaps
|
||||
|
||||
**Remember:** Quality is everyone's responsibility, but QA ensures it's systematically verified.
|
||||
|
||||
---
|
||||
|
||||
**"Testing shows the presence, not the absence of bugs." - Edsger Dijkstra**
|
||||
|
||||
**"Quality is not an act, it is a habit." - Aristotle**
|
||||
345
skills/qa-test-planner/references/figma_validation.md
Normal file
345
skills/qa-test-planner/references/figma_validation.md
Normal file
@@ -0,0 +1,345 @@
|
||||
# Figma Design Validation with MCP
|
||||
|
||||
Guide for validating UI implementation against Figma designs using Figma MCP.
|
||||
|
||||
---
|
||||
|
||||
## Prerequisites
|
||||
|
||||
**Required:**
|
||||
- Figma MCP server configured
|
||||
- Access to Figma design files
|
||||
- Figma URLs for components/pages
|
||||
|
||||
**Setup:**
|
||||
```bash
|
||||
# Install Figma MCP (follow official docs)
|
||||
# Configure API token
|
||||
# Verify access to design files
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Validation Workflow
|
||||
|
||||
### Step 1: Get Design Specifications
|
||||
|
||||
**Using Figma MCP:**
|
||||
```
|
||||
"Get the specifications for the primary button from Figma file at [URL]"
|
||||
|
||||
Response includes:
|
||||
- Dimensions (width, height)
|
||||
- Colors (background, text, border)
|
||||
- Typography (font, size, weight)
|
||||
- Spacing (padding, margin)
|
||||
- Border radius
|
||||
- States (default, hover, active, disabled)
|
||||
```
|
||||
|
||||
### Step 2: Inspect Implementation
|
||||
|
||||
**Browser DevTools:**
|
||||
1. Inspect element
|
||||
2. Check computed styles
|
||||
3. Verify dimensions
|
||||
4. Compare colors (use color picker)
|
||||
5. Check typography
|
||||
6. Test interactive states
|
||||
|
||||
### Step 3: Document Discrepancies
|
||||
|
||||
**Create test case or bug:**
|
||||
```
|
||||
TC-UI-001: Primary Button Visual Validation
|
||||
|
||||
Design (Figma):
|
||||
- Size: 120x40px
|
||||
- Background: #0066FF
|
||||
- Border-radius: 8px
|
||||
- Font: 16px Medium #FFFFFF
|
||||
|
||||
Implementation:
|
||||
- Size: 120x40px ✓
|
||||
- Background: #0052CC ✗ (wrong shade)
|
||||
- Border-radius: 8px ✓
|
||||
- Font: 16px Regular #FFFFFF ✗ (wrong weight)
|
||||
|
||||
Status: FAIL
|
||||
Bugs: BUG-234, BUG-235
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## What to Validate
|
||||
|
||||
### Layout & Spacing
|
||||
- [ ] Component dimensions
|
||||
- [ ] Padding (all sides)
|
||||
- [ ] Margins
|
||||
- [ ] Grid alignment
|
||||
- [ ] Responsive breakpoints
|
||||
- [ ] Container max-width
|
||||
|
||||
**Example Query:**
|
||||
```
|
||||
"Extract spacing values for the card component from Figma"
|
||||
```
|
||||
|
||||
### Typography
|
||||
- [ ] Font family
|
||||
- [ ] Font size
|
||||
- [ ] Font weight
|
||||
- [ ] Line height
|
||||
- [ ] Letter spacing
|
||||
- [ ] Text color
|
||||
- [ ] Text alignment
|
||||
|
||||
**Example Query:**
|
||||
```
|
||||
"Get typography specifications for all heading levels from Figma design system"
|
||||
```
|
||||
|
||||
### Colors
|
||||
- [ ] Background colors
|
||||
- [ ] Text colors
|
||||
- [ ] Border colors
|
||||
- [ ] Shadow colors
|
||||
- [ ] Gradient values
|
||||
- [ ] Opacity values
|
||||
|
||||
**Example Query:**
|
||||
```
|
||||
"List all color tokens used in the navigation component"
|
||||
```
|
||||
|
||||
### Components
|
||||
- [ ] Icon sizes and colors
|
||||
- [ ] Button states
|
||||
- [ ] Input field styling
|
||||
- [ ] Checkbox/radio appearance
|
||||
- [ ] Dropdown styling
|
||||
- [ ] Card components
|
||||
|
||||
**Example Query:**
|
||||
```
|
||||
"Compare the implemented dropdown menu with Figma design at [URL]"
|
||||
```
|
||||
|
||||
### Interactive States
|
||||
- [ ] Default state
|
||||
- [ ] Hover state
|
||||
- [ ] Active/pressed state
|
||||
- [ ] Focus state
|
||||
- [ ] Disabled state
|
||||
- [ ] Loading state
|
||||
- [ ] Error state
|
||||
|
||||
---
|
||||
|
||||
## Common Discrepancies
|
||||
|
||||
### Typography Mismatches
|
||||
- Wrong font weight (e.g., Regular instead of Medium)
|
||||
- Incorrect font size
|
||||
- Missing line-height
|
||||
- Color hex codes off by a shade
|
||||
|
||||
### Spacing Issues
|
||||
- Padding not matching
|
||||
- Inconsistent margins
|
||||
- Grid misalignment
|
||||
- Component spacing varies
|
||||
|
||||
### Color Differences
|
||||
- Hex values off (#0066FF vs #0052CC)
|
||||
- Opacity not applied
|
||||
- Gradient angles wrong
|
||||
- Shadow colors incorrect
|
||||
|
||||
### Responsive Behavior
|
||||
- Breakpoints don't match
|
||||
- Mobile layout different
|
||||
- Tablet view inconsistent
|
||||
- Scaling not as designed
|
||||
|
||||
---
|
||||
|
||||
## Test Case Template
|
||||
|
||||
```markdown
|
||||
## TC-UI-XXX: [Component] Visual Validation
|
||||
|
||||
**Figma Design:** [URL to specific component]
|
||||
|
||||
### Desktop (1920x1080)
|
||||
|
||||
**Layout:**
|
||||
- [ ] Width: XXXpx
|
||||
- [ ] Height: XXXpx
|
||||
- [ ] Padding: XXpx XXpx XXpx XXpx
|
||||
- [ ] Margin: XXpx
|
||||
|
||||
**Typography:**
|
||||
- [ ] Font: [Family] [Weight]
|
||||
- [ ] Size: XXpx
|
||||
- [ ] Line-height: XXpx
|
||||
- [ ] Color: #XXXXXX
|
||||
|
||||
**Colors:**
|
||||
- [ ] Background: #XXXXXX
|
||||
- [ ] Border: Xpx solid #XXXXXX
|
||||
- [ ] Shadow: XXpx XXpx XXpx rgba(X,X,X,X)
|
||||
|
||||
**Interactive States:**
|
||||
- [ ] Hover: [changes]
|
||||
- [ ] Active: [changes]
|
||||
- [ ] Focus: [changes]
|
||||
- [ ] Disabled: [changes]
|
||||
|
||||
### Tablet (768px)
|
||||
- [ ] [Responsive changes]
|
||||
|
||||
### Mobile (375px)
|
||||
- [ ] [Responsive changes]
|
||||
|
||||
### Status
|
||||
- [ ] PASS - All match
|
||||
- [ ] FAIL - Discrepancies found
|
||||
- [ ] BLOCKED - Design incomplete
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Figma MCP Queries
|
||||
|
||||
### Component Specifications
|
||||
```
|
||||
"Get complete specifications for the [component name] from Figma at [URL]"
|
||||
"Extract all button variants from the design system"
|
||||
"List typography styles defined in Figma"
|
||||
```
|
||||
|
||||
### Color System
|
||||
```
|
||||
"Show me all color tokens in the Figma design system"
|
||||
"What colors are used in the navigation bar design?"
|
||||
"Get the exact hex values for primary, secondary, and accent colors"
|
||||
```
|
||||
|
||||
### Spacing & Layout
|
||||
```
|
||||
"What are the padding values for the card component?"
|
||||
"Extract grid specifications from the page layout"
|
||||
"Get spacing tokens (8px, 16px, 24px, etc.)"
|
||||
```
|
||||
|
||||
### Responsive Breakpoints
|
||||
```
|
||||
"What are the defined breakpoints in this Figma design?"
|
||||
"Show mobile vs desktop layout differences for [component]"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Bug Report for UI Discrepancies
|
||||
|
||||
```markdown
|
||||
# BUG-XXX: [Component] doesn't match Figma design
|
||||
|
||||
**Severity:** Medium (UI)
|
||||
**Type:** Visual
|
||||
|
||||
## Design vs Implementation
|
||||
|
||||
**Figma Design:** [URL]
|
||||
|
||||
**Expected (from Figma):**
|
||||
- Button background: #0066FF
|
||||
- Font weight: 600 (Semi-bold)
|
||||
- Padding: 12px 24px
|
||||
|
||||
**Actual (in implementation):**
|
||||
- Button background: #0052CC ❌
|
||||
- Font weight: 400 (Regular) ❌
|
||||
- Padding: 12px 24px ✓
|
||||
|
||||
## Screenshots
|
||||
|
||||
- Figma design: [attach]
|
||||
- Current implementation: [attach]
|
||||
- Side-by-side comparison: [attach]
|
||||
|
||||
## Impact
|
||||
|
||||
Users see inconsistent branding. Button appears less prominent than designed.
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Automation Ideas
|
||||
|
||||
### Visual Regression Testing
|
||||
- Capture screenshots
|
||||
- Compare against Figma exports
|
||||
- Highlight pixel differences
|
||||
- Tools: Percy, Chromatic, BackstopJS
|
||||
|
||||
### Design Token Validation
|
||||
- Extract Figma design tokens
|
||||
- Compare with CSS variables
|
||||
- Flag mismatches
|
||||
- Automate with scripts
|
||||
|
||||
---
|
||||
|
||||
## Best Practices
|
||||
|
||||
**DO:**
|
||||
- ✅ Always reference specific Figma URLs
|
||||
- ✅ Test all component states
|
||||
- ✅ Check responsive breakpoints
|
||||
- ✅ Document exact values (not "close enough")
|
||||
- ✅ Screenshot both design and implementation
|
||||
- ✅ Test in multiple browsers
|
||||
|
||||
**DON'T:**
|
||||
- ❌ Assume "it looks right"
|
||||
- ❌ Skip hover/active states
|
||||
- ❌ Ignore small color differences
|
||||
- ❌ Test only on one screen size
|
||||
- ❌ Forget to check typography
|
||||
- ❌ Miss spacing issues
|
||||
|
||||
---
|
||||
|
||||
## Checklist for UI Test Cases
|
||||
|
||||
Per component:
|
||||
- [ ] Figma URL documented
|
||||
- [ ] Desktop layout validated
|
||||
- [ ] Mobile/tablet responsive checked
|
||||
- [ ] All interactive states tested
|
||||
- [ ] Colors match exactly (use color picker)
|
||||
- [ ] Typography specifications correct
|
||||
- [ ] Spacing (padding/margins) accurate
|
||||
- [ ] Icons match design
|
||||
- [ ] Shadows/borders match
|
||||
- [ ] Animations match timing/easing
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Element | What to Check | Tool |
|
||||
|---------|---------------|------|
|
||||
| Colors | Hex values exact | Browser color picker |
|
||||
| Spacing | Padding/margin px | DevTools computed styles |
|
||||
| Typography | Font, size, weight | DevTools font panel |
|
||||
| Layout | Width, height, position | DevTools box model |
|
||||
| States | Hover, active, focus | Manual interaction |
|
||||
| Responsive | Breakpoint behavior | DevTools device mode |
|
||||
|
||||
---
|
||||
|
||||
**Remember:** Pixel-perfect implementation builds user trust and brand consistency.
|
||||
371
skills/qa-test-planner/references/regression_testing.md
Normal file
371
skills/qa-test-planner/references/regression_testing.md
Normal file
@@ -0,0 +1,371 @@
|
||||
# Regression Testing Guide
|
||||
|
||||
Comprehensive guide to regression testing strategies and execution.
|
||||
|
||||
---
|
||||
|
||||
## What is Regression Testing?
|
||||
|
||||
**Definition:** Re-testing existing functionality to ensure new changes haven't broken anything.
|
||||
|
||||
**When to run:**
|
||||
- Before every release
|
||||
- After bug fixes
|
||||
- After new features
|
||||
- After refactoring
|
||||
- Weekly/nightly builds
|
||||
|
||||
---
|
||||
|
||||
## Regression Test Suite Structure
|
||||
|
||||
### 1. Smoke Test Suite (15-30 min)
|
||||
|
||||
**Purpose:** Quick sanity check
|
||||
|
||||
**When:** Daily, before detailed testing
|
||||
|
||||
**Coverage:**
|
||||
- Critical user paths
|
||||
- Core functionality
|
||||
- System health checks
|
||||
- Build stability
|
||||
|
||||
**Example Smoke Suite:**
|
||||
```
|
||||
SMOKE-001: User can login
|
||||
SMOKE-002: User can navigate to main features
|
||||
SMOKE-003: Critical API endpoints respond
|
||||
SMOKE-004: Database connectivity works
|
||||
SMOKE-005: User can complete primary action
|
||||
SMOKE-006: User can logout
|
||||
```
|
||||
|
||||
### 2. Full Regression Suite (2-4 hours)
|
||||
|
||||
**Purpose:** Comprehensive validation
|
||||
|
||||
**When:** Before releases, weekly
|
||||
|
||||
**Coverage:**
|
||||
- All functional test cases
|
||||
- Integration scenarios
|
||||
- UI validation
|
||||
- Data integrity
|
||||
- Security checks
|
||||
|
||||
### 3. Targeted Regression (30-60 min)
|
||||
|
||||
**Purpose:** Test impacted areas
|
||||
|
||||
**When:** After specific changes
|
||||
|
||||
**Coverage:**
|
||||
- Modified feature area
|
||||
- Related components
|
||||
- Integration points
|
||||
- Dependent functionality
|
||||
|
||||
---
|
||||
|
||||
## Building a Regression Suite
|
||||
|
||||
### Step 1: Identify Critical Paths
|
||||
|
||||
**Questions:**
|
||||
- What can users absolutely NOT live without?
|
||||
- What generates revenue?
|
||||
- What handles sensitive data?
|
||||
- What's used most frequently?
|
||||
|
||||
**Example Critical Paths:**
|
||||
- User authentication
|
||||
- Payment processing
|
||||
- Data submission
|
||||
- Report generation
|
||||
- Core business logic
|
||||
|
||||
### Step 2: Prioritize Test Cases
|
||||
|
||||
**P0 (Must Run):**
|
||||
- Business-critical functionality
|
||||
- Security-related tests
|
||||
- Data integrity checks
|
||||
- Revenue-impacting features
|
||||
|
||||
**P1 (Should Run):**
|
||||
- Major features
|
||||
- Common user flows
|
||||
- Integration points
|
||||
- Performance checks
|
||||
|
||||
**P2 (Nice to Run):**
|
||||
- Minor features
|
||||
- Edge cases
|
||||
- UI polish
|
||||
- Optional functionality
|
||||
|
||||
### Step 3: Group by Feature Area
|
||||
|
||||
```
|
||||
Authentication & Authorization
|
||||
├─ Login/Logout
|
||||
├─ Password reset
|
||||
├─ Session management
|
||||
└─ Permissions
|
||||
|
||||
Payment Processing
|
||||
├─ Checkout flow
|
||||
├─ Payment methods
|
||||
├─ Refunds
|
||||
└─ Receipt generation
|
||||
|
||||
User Management
|
||||
├─ Profile updates
|
||||
├─ Preferences
|
||||
├─ Account settings
|
||||
└─ Data export
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Regression Suite Examples
|
||||
|
||||
### E-commerce Regression Suite
|
||||
|
||||
**Smoke Tests (20 min):**
|
||||
1. Homepage loads
|
||||
2. User can login
|
||||
3. Product search works
|
||||
4. Add to cart functions
|
||||
5. Checkout accessible
|
||||
6. Payment gateway responds
|
||||
|
||||
**Full Regression (3 hours):**
|
||||
|
||||
**User Account (30 min):**
|
||||
- Registration
|
||||
- Login/Logout
|
||||
- Password reset
|
||||
- Profile updates
|
||||
- Address management
|
||||
|
||||
**Product Catalog (45 min):**
|
||||
- Browse categories
|
||||
- Search functionality
|
||||
- Filters and sorting
|
||||
- Product details
|
||||
- Image zoom
|
||||
- Reviews display
|
||||
|
||||
**Shopping Cart (30 min):**
|
||||
- Add items
|
||||
- Update quantities
|
||||
- Remove items
|
||||
- Apply discounts
|
||||
- Save for later
|
||||
- Cart persistence
|
||||
|
||||
**Checkout & Payment (45 min):**
|
||||
- Guest checkout
|
||||
- Registered user checkout
|
||||
- Multiple addresses
|
||||
- Payment methods
|
||||
- Order confirmation
|
||||
- Email notifications
|
||||
|
||||
**Order Management (30 min):**
|
||||
- Order history
|
||||
- Order tracking
|
||||
- Cancellations
|
||||
- Returns/Refunds
|
||||
- Reorders
|
||||
|
||||
---
|
||||
|
||||
## Execution Strategy
|
||||
|
||||
### Test Execution Order
|
||||
|
||||
**1. Smoke first**
|
||||
- If smoke fails → stop, fix build
|
||||
- If smoke passes → proceed to full regression
|
||||
|
||||
**2. P0 tests next**
|
||||
- Critical functionality
|
||||
- Must pass before proceeding
|
||||
|
||||
**3. P1 then P2**
|
||||
- Complete remaining tests
|
||||
- Track failures
|
||||
|
||||
**4. Exploratory**
|
||||
- Unscripted testing
|
||||
- Find unexpected issues
|
||||
|
||||
### Pass/Fail Criteria
|
||||
|
||||
**PASS:**
|
||||
- All P0 tests pass
|
||||
- 90%+ P1 tests pass
|
||||
- No critical bugs open
|
||||
- Performance acceptable
|
||||
|
||||
**FAIL (Block Release):**
|
||||
- Any P0 test fails
|
||||
- Critical bug discovered
|
||||
- Security vulnerability
|
||||
- Data loss scenario
|
||||
|
||||
**CONDITIONAL PASS:**
|
||||
- P1 failures with workarounds
|
||||
- Known issues documented
|
||||
- Fix plan in place
|
||||
|
||||
---
|
||||
|
||||
## Regression Test Management
|
||||
|
||||
### Test Suite Maintenance
|
||||
|
||||
**Monthly Review:**
|
||||
- Remove obsolete tests
|
||||
- Update changed functionality
|
||||
- Add new critical paths
|
||||
- Optimize slow tests
|
||||
|
||||
**After Each Release:**
|
||||
- Update test data
|
||||
- Fix broken tests
|
||||
- Add regression for bugs found
|
||||
- Document changes
|
||||
|
||||
### Automation Considerations
|
||||
|
||||
**Good Candidates for Automation:**
|
||||
- Stable, repetitive tests
|
||||
- Smoke tests
|
||||
- API tests
|
||||
- Data validation
|
||||
- Cross-browser checks
|
||||
|
||||
**Keep Manual:**
|
||||
- Exploratory testing
|
||||
- Usability evaluation
|
||||
- Visual design validation
|
||||
- Complex user scenarios
|
||||
|
||||
---
|
||||
|
||||
## Regression Test Execution Report
|
||||
|
||||
```markdown
|
||||
# Regression Test Report: Release 2.5.0
|
||||
|
||||
**Date:** 2024-01-15
|
||||
**Build:** v2.5.0-rc1
|
||||
**Tester:** QA Team
|
||||
**Environment:** Staging
|
||||
|
||||
## Summary
|
||||
|
||||
| Suite | Total | Pass | Fail | Blocked | Pass Rate |
|
||||
|-------|-------|------|------|---------|-----------|
|
||||
| Smoke | 10 | 10 | 0 | 0 | 100% |
|
||||
| P0 Critical | 25 | 23 | 2 | 0 | 92% |
|
||||
| P1 High | 50 | 47 | 2 | 1 | 94% |
|
||||
| P2 Medium | 40 | 38 | 1 | 1 | 95% |
|
||||
| **TOTAL** | **125** | **118** | **5** | **2** | **94%** |
|
||||
|
||||
## Critical Failures (P0)
|
||||
|
||||
### BUG-234: Payment processing fails for Visa
|
||||
- **Test:** TC-PAY-001
|
||||
- **Impact:** High - Blocks 40% of transactions
|
||||
- **Status:** In Progress
|
||||
- **ETA:** 2024-01-16
|
||||
|
||||
### BUG-235: User session expires prematurely
|
||||
- **Test:** TC-AUTH-045
|
||||
- **Impact:** Medium - Users logged out unexpectedly
|
||||
- **Status:** Under investigation
|
||||
|
||||
## Recommendation
|
||||
|
||||
**Status:** ⚠️ CONDITIONAL GO
|
||||
- Fix BUG-234 (payment) before release
|
||||
- BUG-235 acceptable with documented workaround
|
||||
- Retest after fixes
|
||||
- Final regression run before production deployment
|
||||
|
||||
## Risks
|
||||
|
||||
- Payment issue could impact revenue
|
||||
- Session bug may frustrate users
|
||||
- Limited time before release deadline
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. Fix BUG-234 by EOD
|
||||
2. Retest payment flow
|
||||
3. Document session workaround
|
||||
4. Final smoke test before release
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Common Pitfalls
|
||||
|
||||
**❌ Don't:**
|
||||
- Run same tests without updating
|
||||
- Skip regression "to save time"
|
||||
- Ignore failures in low-priority tests
|
||||
- Test only happy paths
|
||||
- Forget to update test data
|
||||
- Run regression once and forget
|
||||
|
||||
**✅ Do:**
|
||||
- Maintain suite regularly
|
||||
- Run regression consistently
|
||||
- Investigate all failures
|
||||
- Include edge cases
|
||||
- Keep test data fresh
|
||||
- Automate repetitive tests
|
||||
|
||||
---
|
||||
|
||||
## Regression Checklist
|
||||
|
||||
**Before Execution:**
|
||||
- [ ] Test environment ready
|
||||
- [ ] Build deployed
|
||||
- [ ] Test data prepared
|
||||
- [ ] Previous bugs verified fixed
|
||||
- [ ] Test suite reviewed/updated
|
||||
|
||||
**During Execution:**
|
||||
- [ ] Follow test execution order
|
||||
- [ ] Document all failures
|
||||
- [ ] Screenshot/record issues
|
||||
- [ ] Note unexpected behavior
|
||||
- [ ] Track blockers
|
||||
|
||||
**After Execution:**
|
||||
- [ ] Compile results
|
||||
- [ ] File new bugs
|
||||
- [ ] Update test cases
|
||||
- [ ] Report to stakeholders
|
||||
- [ ] Archive artifacts
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Suite Type | Duration | Frequency | Coverage |
|
||||
|------------|----------|-----------|----------|
|
||||
| Smoke | 15-30 min | Daily | Critical paths |
|
||||
| Targeted | 30-60 min | Per change | Affected areas |
|
||||
| Full | 2-4 hours | Weekly/Release | Comprehensive |
|
||||
| Sanity | 10-15 min | After hotfix | Quick validation |
|
||||
|
||||
**Remember:** Regression testing is insurance against breaking existing functionality.
|
||||
276
skills/qa-test-planner/scripts/create_bug_report.sh
Executable file
276
skills/qa-test-planner/scripts/create_bug_report.sh
Executable file
@@ -0,0 +1,276 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Bug Report Generator
|
||||
# Create structured, reproducible bug reports
|
||||
|
||||
set -e
|
||||
|
||||
# Colors
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
MAGENTA='\033[0;35m'
|
||||
CYAN='\033[0;36m'
|
||||
NC='\033[0m'
|
||||
|
||||
echo -e "${RED}╔══════════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${RED}║ Bug Report Generator ║${NC}"
|
||||
echo -e "${RED}╚══════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input() {
|
||||
local prompt_text="$1"
|
||||
local var_name="$2"
|
||||
local required="$3"
|
||||
|
||||
while true; do
|
||||
echo -e "${CYAN}${prompt_text}${NC}"
|
||||
read -r input
|
||||
|
||||
if [ -n "$input" ]; then
|
||||
eval "$var_name=\"$input\""
|
||||
break
|
||||
elif [ "$required" != "true" ]; then
|
||||
eval "$var_name=\"\""
|
||||
break
|
||||
else
|
||||
echo -e "${RED}This field is required.${NC}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# Bug ID
|
||||
BUG_ID="BUG-$(date +%Y%m%d%H%M%S)"
|
||||
echo -e "${YELLOW}Auto-generated Bug ID: $BUG_ID${NC}"
|
||||
echo ""
|
||||
|
||||
# Basic Info
|
||||
prompt_input "Bug title (clear, specific):" BUG_TITLE true
|
||||
|
||||
echo ""
|
||||
echo "Severity:"
|
||||
echo "1) Critical - System crash, data loss, security issue"
|
||||
echo "2) High - Major feature broken, no workaround"
|
||||
echo "3) Medium - Feature partially broken, workaround exists"
|
||||
echo "4) Low - Cosmetic, minor inconvenience"
|
||||
echo ""
|
||||
|
||||
prompt_input "Select severity (1-4):" SEVERITY_NUM true
|
||||
|
||||
case $SEVERITY_NUM in
|
||||
1) SEVERITY="Critical" ;;
|
||||
2) SEVERITY="High" ;;
|
||||
3) SEVERITY="Medium" ;;
|
||||
4) SEVERITY="Low" ;;
|
||||
*) SEVERITY="Medium" ;;
|
||||
esac
|
||||
|
||||
echo ""
|
||||
echo "Priority:"
|
||||
echo "1) P0 - Blocks release"
|
||||
echo "2) P1 - Fix before release"
|
||||
echo "3) P2 - Fix in next release"
|
||||
echo "4) P3 - Fix when possible"
|
||||
echo ""
|
||||
|
||||
prompt_input "Select priority (1-4):" PRIORITY_NUM true
|
||||
|
||||
case $PRIORITY_NUM in
|
||||
1) PRIORITY="P0" ;;
|
||||
2) PRIORITY="P1" ;;
|
||||
3) PRIORITY="P2" ;;
|
||||
4) PRIORITY="P3" ;;
|
||||
*) PRIORITY="P2" ;;
|
||||
esac
|
||||
|
||||
# Environment
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Environment Details ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Operating System (e.g., Windows 11, macOS 14):" OS true
|
||||
prompt_input "Browser & Version (e.g., Chrome 120, Firefox 121):" BROWSER true
|
||||
prompt_input "Device (e.g., Desktop, iPhone 15):" DEVICE false
|
||||
prompt_input "Build/Version number:" BUILD true
|
||||
prompt_input "URL or page where bug occurs:" URL false
|
||||
|
||||
# Bug Description
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Bug Description ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Brief description of the issue:" DESCRIPTION true
|
||||
|
||||
# Reproduction Steps
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Steps to Reproduce ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
echo "Enter reproduction steps (one per line, press Enter twice when done):"
|
||||
REPRO_STEPS=""
|
||||
STEP_NUM=1
|
||||
while true; do
|
||||
read -r line
|
||||
if [ -z "$line" ]; then
|
||||
break
|
||||
fi
|
||||
REPRO_STEPS="${REPRO_STEPS}${STEP_NUM}. ${line}\n"
|
||||
((STEP_NUM++))
|
||||
done
|
||||
|
||||
# Expected vs Actual
|
||||
echo ""
|
||||
prompt_input "Expected behavior:" EXPECTED true
|
||||
prompt_input "Actual behavior:" ACTUAL true
|
||||
|
||||
# Additional Info
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Additional Information ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Console errors (paste if any):" CONSOLE_ERRORS false
|
||||
prompt_input "Frequency (Always/Sometimes/Rare):" FREQUENCY false
|
||||
prompt_input "How many users affected (estimate):" USER_IMPACT false
|
||||
prompt_input "Workaround available? (describe if yes):" WORKAROUND false
|
||||
prompt_input "Related test case ID:" TEST_CASE false
|
||||
prompt_input "Figma design link (if UI bug):" FIGMA_LINK false
|
||||
prompt_input "First noticed (date/build):" FIRST_NOTICED false
|
||||
|
||||
FILENAME="${BUG_ID}.md"
|
||||
|
||||
OUTPUT_DIR="."
|
||||
if [ ! -z "$1" ]; then
|
||||
OUTPUT_DIR="$1"
|
||||
fi
|
||||
|
||||
OUTPUT_FILE="$OUTPUT_DIR/$FILENAME"
|
||||
|
||||
echo ""
|
||||
echo -e "${BLUE}Generating bug report...${NC}"
|
||||
echo ""
|
||||
|
||||
cat > "$OUTPUT_FILE" << EOF
|
||||
# ${BUG_ID}: ${BUG_TITLE}
|
||||
|
||||
**Severity:** ${SEVERITY}
|
||||
**Priority:** ${PRIORITY}
|
||||
**Type:** ${TEST_TYPE:-Functional}
|
||||
**Status:** Open
|
||||
**Reported:** $(date +%Y-%m-%d)
|
||||
**Reporter:** [Your Name]
|
||||
|
||||
---
|
||||
|
||||
## Environment
|
||||
|
||||
- **OS:** ${OS}
|
||||
- **Browser:** ${BROWSER}
|
||||
- **Device:** ${DEVICE:-Desktop}
|
||||
- **Build:** ${BUILD}
|
||||
- **URL:** ${URL:-N/A}
|
||||
|
||||
---
|
||||
|
||||
## Description
|
||||
|
||||
${DESCRIPTION}
|
||||
|
||||
---
|
||||
|
||||
## Steps to Reproduce
|
||||
|
||||
${REPRO_STEPS}
|
||||
|
||||
---
|
||||
|
||||
## Expected Behavior
|
||||
|
||||
${EXPECTED}
|
||||
|
||||
---
|
||||
|
||||
## Actual Behavior
|
||||
|
||||
${ACTUAL}
|
||||
|
||||
---
|
||||
|
||||
## Visual Evidence
|
||||
|
||||
- [ ] Screenshot attached
|
||||
- [ ] Screen recording attached
|
||||
- [ ] Console logs attached
|
||||
|
||||
**Console Errors:**
|
||||
\`\`\`
|
||||
${CONSOLE_ERRORS:-None}
|
||||
\`\`\`
|
||||
|
||||
---
|
||||
|
||||
## Impact
|
||||
|
||||
- **Frequency:** ${FREQUENCY:-Unknown}
|
||||
- **User Impact:** ${USER_IMPACT:-Unknown}
|
||||
- **Workaround:** ${WORKAROUND:-None available}
|
||||
|
||||
---
|
||||
|
||||
## Additional Context
|
||||
|
||||
${FIGMA_LINK:+**Figma Design:** ${FIGMA_LINK}}
|
||||
|
||||
${TEST_CASE:+**Related Test Case:** ${TEST_CASE}}
|
||||
|
||||
${FIRST_NOTICED:+**First Noticed:** ${FIRST_NOTICED}}
|
||||
|
||||
**Is this a regression?** [Yes/No - if yes, since when]
|
||||
|
||||
---
|
||||
|
||||
## Root Cause
|
||||
|
||||
[To be filled by developer]
|
||||
|
||||
---
|
||||
|
||||
## Fix
|
||||
|
||||
[To be filled by developer]
|
||||
|
||||
---
|
||||
|
||||
## Verification
|
||||
|
||||
- [ ] Bug fix verified in dev environment
|
||||
- [ ] Regression testing completed
|
||||
- [ ] Related test cases passing
|
||||
- [ ] Ready for release
|
||||
|
||||
**Verified By:** ___________
|
||||
**Date:** ___________
|
||||
|
||||
---
|
||||
|
||||
## Comments
|
||||
|
||||
[Discussion and updates]
|
||||
|
||||
EOF
|
||||
|
||||
echo -e "${GREEN}✅ Bug report generated successfully!${NC}"
|
||||
echo ""
|
||||
echo -e "File location: ${BLUE}$OUTPUT_FILE${NC}"
|
||||
echo ""
|
||||
echo -e "${RED}⚠️ IMPORTANT NEXT STEPS:${NC}"
|
||||
echo "1. Attach screenshots/screen recordings"
|
||||
echo "2. Add console errors if available"
|
||||
echo "3. Verify reproduction steps work"
|
||||
echo "4. Submit to bug tracking system"
|
||||
if [ -n "$FIGMA_LINK" ]; then
|
||||
echo "5. Verify against Figma design"
|
||||
fi
|
||||
echo ""
|
||||
echo -e "${CYAN}Tip: Clear, reproducible steps = faster fixes${NC}"
|
||||
echo ""
|
||||
302
skills/qa-test-planner/scripts/generate_test_cases.sh
Executable file
302
skills/qa-test-planner/scripts/generate_test_cases.sh
Executable file
@@ -0,0 +1,302 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Manual Test Case Generator
|
||||
# Interactive workflow for creating comprehensive test cases
|
||||
|
||||
set -e
|
||||
|
||||
# Colors
|
||||
GREEN='\033[0;32m'
|
||||
BLUE='\033[0;34m'
|
||||
YELLOW='\033[1;33m'
|
||||
RED='\033[0;31m'
|
||||
MAGENTA='\033[0;35m'
|
||||
CYAN='\033[0;36m'
|
||||
NC='\033[0m'
|
||||
|
||||
echo -e "${BLUE}╔══════════════════════════════════════════════════╗${NC}"
|
||||
echo -e "${BLUE}║ Manual Test Case Generator ║${NC}"
|
||||
echo -e "${BLUE}╚══════════════════════════════════════════════════╝${NC}"
|
||||
echo ""
|
||||
|
||||
# Helper functions
|
||||
prompt_input() {
|
||||
local prompt_text="$1"
|
||||
local var_name="$2"
|
||||
local required="$3"
|
||||
|
||||
while true; do
|
||||
echo -e "${CYAN}${prompt_text}${NC}"
|
||||
read -r input
|
||||
|
||||
if [ -n "$input" ]; then
|
||||
eval "$var_name=\"$input\""
|
||||
break
|
||||
elif [ "$required" != "true" ]; then
|
||||
eval "$var_name=\"\""
|
||||
break
|
||||
else
|
||||
echo -e "${RED}This field is required.${NC}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# Step 1: Basic Info
|
||||
echo -e "${MAGENTA}━━━ Step 1: Test Case Basics ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Test Case ID (e.g., TC-LOGIN-001):" TC_ID true
|
||||
prompt_input "Test Case Title:" TC_TITLE true
|
||||
|
||||
echo ""
|
||||
echo "Priority:"
|
||||
echo "1) P0 - Critical (blocks release)"
|
||||
echo "2) P1 - High (important features)"
|
||||
echo "3) P2 - Medium (nice to have)"
|
||||
echo "4) P3 - Low (minor issues)"
|
||||
echo ""
|
||||
|
||||
prompt_input "Select priority (1-4):" PRIORITY_NUM true
|
||||
|
||||
case $PRIORITY_NUM in
|
||||
1) PRIORITY="P0 (Critical)" ;;
|
||||
2) PRIORITY="P1 (High)" ;;
|
||||
3) PRIORITY="P2 (Medium)" ;;
|
||||
4) PRIORITY="P3 (Low)" ;;
|
||||
*) PRIORITY="P2 (Medium)" ;;
|
||||
esac
|
||||
|
||||
echo ""
|
||||
echo "Test Type:"
|
||||
echo "1) Functional"
|
||||
echo "2) UI/Visual"
|
||||
echo "3) Integration"
|
||||
echo "4) Regression"
|
||||
echo "5) Performance"
|
||||
echo "6) Security"
|
||||
echo ""
|
||||
|
||||
prompt_input "Select test type (1-6):" TYPE_NUM true
|
||||
|
||||
case $TYPE_NUM in
|
||||
1) TEST_TYPE="Functional" ;;
|
||||
2) TEST_TYPE="UI/Visual" ;;
|
||||
3) TEST_TYPE="Integration" ;;
|
||||
4) TEST_TYPE="Regression" ;;
|
||||
5) TEST_TYPE="Performance" ;;
|
||||
6) TEST_TYPE="Security" ;;
|
||||
*) TEST_TYPE="Functional" ;;
|
||||
esac
|
||||
|
||||
prompt_input "Estimated test time (minutes):" EST_TIME false
|
||||
|
||||
# Step 2: Objective and Description
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Step 2: Test Objective ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "What are you testing? (objective):" OBJECTIVE true
|
||||
prompt_input "Why is this test important?" WHY_IMPORTANT false
|
||||
|
||||
# Step 3: Preconditions
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Step 3: Preconditions ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
echo "Enter preconditions (one per line, press Enter twice when done):"
|
||||
PRECONDITIONS=""
|
||||
while true; do
|
||||
read -r line
|
||||
if [ -z "$line" ]; then
|
||||
break
|
||||
fi
|
||||
PRECONDITIONS="${PRECONDITIONS}- ${line}\n"
|
||||
done
|
||||
|
||||
# Step 4: Test Steps
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Step 4: Test Steps ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
echo "Enter test steps (format: action | expected result)"
|
||||
echo "Type 'done' when finished"
|
||||
echo ""
|
||||
|
||||
TEST_STEPS=""
|
||||
STEP_NUM=1
|
||||
|
||||
while true; do
|
||||
echo -e "${YELLOW}Step $STEP_NUM:${NC}"
|
||||
prompt_input "Action:" ACTION false
|
||||
|
||||
if [ "$ACTION" = "done" ] || [ -z "$ACTION" ]; then
|
||||
break
|
||||
fi
|
||||
|
||||
prompt_input "Expected result:" EXPECTED true
|
||||
|
||||
TEST_STEPS="${TEST_STEPS}${STEP_NUM}. ${ACTION}\n **Expected:** ${EXPECTED}\n\n"
|
||||
((STEP_NUM++))
|
||||
done
|
||||
|
||||
# Step 5: Test Data
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Step 5: Test Data ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Test data required (e.g., user credentials, sample data):" TEST_DATA false
|
||||
|
||||
# Step 6: Figma Design (if UI test)
|
||||
echo ""
|
||||
if [ "$TEST_TYPE" = "UI/Visual" ]; then
|
||||
echo -e "${MAGENTA}━━━ Step 6: Figma Design Validation ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Figma design URL (if applicable):" FIGMA_URL false
|
||||
prompt_input "Visual elements to validate:" VISUAL_CHECKS false
|
||||
fi
|
||||
|
||||
# Step 7: Edge Cases
|
||||
echo ""
|
||||
echo -e "${MAGENTA}━━━ Step 7: Additional Info ━━━${NC}"
|
||||
echo ""
|
||||
|
||||
prompt_input "Edge cases or variations to consider:" EDGE_CASES false
|
||||
prompt_input "Related test cases (IDs):" RELATED_TCS false
|
||||
prompt_input "Notes or comments:" NOTES false
|
||||
|
||||
# Generate filename
|
||||
FILENAME="${TC_ID}.md"
|
||||
FILENAME="${FILENAME//[^a-zA-Z0-9_-]/}"
|
||||
|
||||
OUTPUT_DIR="."
|
||||
if [ ! -z "$1" ]; then
|
||||
OUTPUT_DIR="$1"
|
||||
fi
|
||||
|
||||
OUTPUT_FILE="$OUTPUT_DIR/$FILENAME"
|
||||
|
||||
# Generate test case
|
||||
echo ""
|
||||
echo -e "${BLUE}Generating test case...${NC}"
|
||||
echo ""
|
||||
|
||||
cat > "$OUTPUT_FILE" << EOF
|
||||
# ${TC_ID}: ${TC_TITLE}
|
||||
|
||||
**Priority:** ${PRIORITY}
|
||||
**Type:** ${TEST_TYPE}
|
||||
**Status:** Not Run
|
||||
**Estimated Time:** ${EST_TIME:-TBD} minutes
|
||||
**Created:** $(date +%Y-%m-%d)
|
||||
|
||||
---
|
||||
|
||||
## Objective
|
||||
|
||||
${OBJECTIVE}
|
||||
|
||||
${WHY_IMPORTANT:+**Why this matters:** ${WHY_IMPORTANT}}
|
||||
|
||||
---
|
||||
|
||||
## Preconditions
|
||||
|
||||
${PRECONDITIONS}
|
||||
|
||||
---
|
||||
|
||||
## Test Steps
|
||||
|
||||
${TEST_STEPS}
|
||||
|
||||
---
|
||||
|
||||
## Test Data
|
||||
|
||||
${TEST_DATA:-No specific test data required}
|
||||
|
||||
---
|
||||
|
||||
EOF
|
||||
|
||||
# Add Figma section if UI test
|
||||
if [ "$TEST_TYPE" = "UI/Visual" ] && [ -n "$FIGMA_URL" ]; then
|
||||
cat >> "$OUTPUT_FILE" << EOF
|
||||
## Visual Validation (Figma)
|
||||
|
||||
**Design Reference:** ${FIGMA_URL}
|
||||
|
||||
**Elements to validate:**
|
||||
${VISUAL_CHECKS}
|
||||
|
||||
**Verification checklist:**
|
||||
- [ ] Layout matches Figma design
|
||||
- [ ] Spacing (padding/margins) accurate
|
||||
- [ ] Typography (font, size, weight, color) correct
|
||||
- [ ] Colors match design system
|
||||
- [ ] Component states (hover, active, disabled) implemented
|
||||
- [ ] Responsive behavior as designed
|
||||
|
||||
---
|
||||
|
||||
EOF
|
||||
fi
|
||||
|
||||
cat >> "$OUTPUT_FILE" << EOF
|
||||
## Post-conditions
|
||||
|
||||
- [Describe system state after test execution]
|
||||
- [Any cleanup required]
|
||||
|
||||
---
|
||||
|
||||
## Edge Cases & Variations
|
||||
|
||||
${EDGE_CASES:-Consider boundary values, null inputs, special characters, concurrent users}
|
||||
|
||||
---
|
||||
|
||||
## Related Test Cases
|
||||
|
||||
${RELATED_TCS:-None}
|
||||
|
||||
---
|
||||
|
||||
## Execution History
|
||||
|
||||
| Date | Tester | Build | Result | Notes |
|
||||
|------|--------|-------|--------|-------|
|
||||
| | | | Not Run | |
|
||||
|
||||
---
|
||||
|
||||
## Notes
|
||||
|
||||
${NOTES}
|
||||
|
||||
---
|
||||
|
||||
## Attachments
|
||||
|
||||
- [ ] Screenshots
|
||||
- [ ] Screen recordings
|
||||
- [ ] Console logs
|
||||
- [ ] Network traces
|
||||
|
||||
EOF
|
||||
|
||||
echo -e "${GREEN}✅ Test case generated successfully!${NC}"
|
||||
echo ""
|
||||
echo -e "File location: ${BLUE}$OUTPUT_FILE${NC}"
|
||||
echo ""
|
||||
echo -e "${YELLOW}Next steps:${NC}"
|
||||
echo "1. Review test case for completeness"
|
||||
echo "2. Add to test suite"
|
||||
echo "3. Execute test and update results"
|
||||
if [ "$TEST_TYPE" = "UI/Visual" ] && [ -n "$FIGMA_URL" ]; then
|
||||
echo "4. Validate against Figma design using MCP"
|
||||
fi
|
||||
echo ""
|
||||
echo -e "${CYAN}Tip: Create multiple test cases for comprehensive coverage${NC}"
|
||||
echo ""
|
||||
Reference in New Issue
Block a user