user-testing
SKILL.md
User Testing & QA Agent
Systematically test web applications, document issues, and deliver comprehensive QA reports.
Workflow
1. Test Planning
Required inputs:
- Application URL (staging or production)
- Test account credentials (or ability to create one)
- Test scope definition
Determine scope:
- Full journey test - End-to-end user flows (signup → core feature → logout)
- Feature-specific test - Single feature deep dive (e.g., search, player, checkout)
- Regression test - Verify existing features still work after updates
- Device test - Mobile vs desktop responsiveness
- Browser test - Cross-browser compatibility (Chrome, Safari, Firefox)
2. Execute Testing Session
Use browser tool for all interactions:
browser action=open targetUrl=https://app.psalmix.com
browser action=snapshot
browser action=act request={kind:"click", ref:"button-login"}
browser action=screenshot
Standard testing flow:
A. Initial Load Test
- Open app URL
- Take snapshot + screenshot
- Check browser console for errors
- Verify page title, meta tags, favicon
- Test initial load performance (any slow elements?)
B. Authentication Flow
- Navigate to signup/login
- Test form validation (empty fields, invalid email, etc.)
- Create new account OR login with test credentials
- Verify redirect after auth
- Check session persistence (refresh page, still logged in?)
C. Core User Flows
For each major feature:
- Navigate to feature
- Take screenshot (before state)
- Perform main action (search, play song, add to playlist, etc.)
- Verify result (did it work?)
- Take screenshot (after state)
- Check for error messages
- Test edge cases (empty states, long text, special characters)
D. Navigation & UI
- Test all main menu items
- Click all buttons/links (verify destinations)
- Test breadcrumbs/back navigation
- Verify modals open/close correctly
- Test dropdowns, tooltips, hover states
E. Responsive Design
- Test desktop view (1920x1080)
- Test tablet view (768x1024)
- Test mobile view (375x667)
- Check for:
- Text overflow/truncation
- Broken layouts
- Unreadable small text
- Buttons too small to tap
- Horizontal scrolling (bad)
F. Data Validation
- Test forms with invalid inputs
- Try to break things (negative testing)
- Check error messages are helpful
- Verify required fields enforce validation
- Test file uploads (if applicable)
G. Performance Checks
- Note slow-loading pages
- Check for:
- Missing images (broken img tags)
- Console warnings/errors
- Network failures (inspect network tab)
- Memory leaks (does tab slow down over time?)
3. Document Findings
Bug report format:
## Bug #1: [Title]
**Severity:** Critical / High / Medium / Low
**Location:** Page/component name
**Steps to Reproduce:**
1. Navigate to X
2. Click Y
3. Enter Z
**Expected:** Should show success message
**Actual:** Shows error "undefined"
**Screenshot:** [bug-01-screenshot.png]
**Console Error:** TypeError: Cannot read property 'name' of undefined
**Browser:** Chrome 121 on macOS
**Date Found:** 2026-01-29
UX improvement format:
## UX Issue #1: [Title]
**Priority:** High / Medium / Low
**Location:** Page/component name
**Observation:** Button text is unclear, says "Submit" instead of "Create Playlist"
**Recommendation:** Change button text to be more descriptive
**Impact:** Minor confusion for new users
**Screenshot:** [ux-01-screenshot.png]
4. Generate QA Report
Final deliverable structure:
# QA Report: [App Name]
**Test Date:** 2026-01-29
**Tester:** Fitz (AI Agent)
**Test Scope:** Full user journey
**Browser:** Chrome 121 / Safari 17
**Devices:** Desktop (1920x1080), Mobile (375x667)
---
## Executive Summary
- ✅ **Major flows working:** Login, Browse, Play Song
- ⚠️ **Issues found:** 3 critical, 5 medium, 8 low
- 🎯 **Recommended fixes:** Focus on #1, #2, #7 before launch
---
## Test Coverage
### ✅ Passed Tests
- User signup flow
- Song playback
- Search functionality
- Mobile responsive design
### ❌ Failed Tests
- Password reset (error 500)
- Playlist creation (UI bug)
- Share button (broken link)
---
## Critical Issues (Fix Before Launch)
### Bug #1: Login fails with valid credentials
**Severity:** Critical
[details...]
### Bug #2: Audio player crashes on iOS
**Severity:** Critical
[details...]
---
## Medium Priority Issues
[List medium bugs...]
---
## Low Priority / Nice-to-Have
[List minor UX improvements...]
---
## Screenshots & Evidence
[Attach all screenshots, organize by category]
---
## Console Errors Log
[Error] TypeError: Cannot read property 'name' of undefined at MusicPlayer.tsx:45
---
## Recommendations
1. **Before App Store submission:**
- Fix critical bugs #1, #2, #3
- Test on actual iOS device (not just simulator)
- Verify all external links work
2. **Post-launch improvements:**
- Improve search relevance
- Add loading states to buttons
- Polish empty states
---
## Test Artifacts
- Stored screenshots: `qa-reports/psalmix-2026-01-29/screenshots/`
- Browser console log: `qa-reports/psalmix-2026-01-29/console.log`
- Test session recording: [if available]
5. Severity Guidelines
Critical:
- App crashes or major functionality broken
- Data loss or corruption
- Security vulnerabilities
- Cannot complete core user flow
High:
- Feature doesn't work as intended
- Poor UX on major flow
- Broken on specific browser/device
- Performance severely degraded
Medium:
- Minor functionality issue
- Confusing UI/UX
- Cosmetic bugs that affect usability
- Missing error messages
Low:
- Typos, text issues
- Cosmetic-only bugs
- Nice-to-have features
- Minor polish opportunities
Reference Files
references/testing-checklists.md- Comprehensive checklists for different app typesreferences/common-bugs.md- Patterns of common web app issuesreferences/accessibility-testing.md- WCAG compliance checks
Tools & Commands
Browser automation commands:
browser action=snapshot- Get DOM structurebrowser action=screenshot- Capture visual statebrowser action=console- Get console logsbrowser action=act- Click, type, navigate
Organize test artifacts:
mkdir -p qa-reports/[app-name]-[date]/{screenshots,logs}
Save report:
# Save to project folder
qa-reports/psalmix-2026-01-29/QA-REPORT.md
Quality Checklist
Before submitting QA report:
- Tested all critical user flows
- Captured screenshots of all issues
- Severity assigned to each bug
- Reproduction steps are clear
- Console errors captured
- Tested on multiple screen sizes
- Tested on multiple browsers (if applicable)
- Recommendations prioritized
- Report is well-organized and scannable
Example Test Scenarios
E-commerce App
- Add to cart → checkout → payment
- Test coupon codes
- Verify order confirmation email
Music Streaming App (PsalMix)
- Signup → browse → play song → create playlist
- Test playback controls (play/pause/skip)
- Verify lyrics display
- Check search accuracy
- Test offline mode (if applicable)
SaaS Dashboard
- Login → create project → invite user → set permissions
- Test data visualization
- Export/import functionality
- API integrations
Content Site
- Navigation → read article → comment → share
- Test SEO meta tags
- Verify social sharing
- Check mobile reading experience
Weekly Installs
2
Repository
mmcmedia/openclaw-agentsFirst Seen
Feb 16, 2026
Security Audits
Installed on
openclaw2
antigravity2
claude-code2
codex2
kiro-cli2
gemini-cli2