157 lines
4.5 KiB
Markdown
157 lines
4.5 KiB
Markdown
# UI/UX Regression Test Triage Workflow
|
|
|
|
## Overview
|
|
|
|
This document defines the triage workflow and ownership for UI/UX regression test failures in the ClawFort Playwright test suite.
|
|
|
|
## Test Failure Severity
|
|
|
|
### Critical (Block Release)
|
|
- Smoke test failures in PR gate
|
|
- Core journey failures (hero/feed loading, modal open/close)
|
|
- Accessibility violations (keyboard navigation, focus management)
|
|
- Cross-browser compatibility issues
|
|
|
|
### High (Fix Before Release)
|
|
- Full regression failures in main/nightly
|
|
- Responsive layout issues on supported breakpoints
|
|
- Theme-specific rendering problems
|
|
- Deep-link functionality failures
|
|
|
|
### Medium (Fix in Next Sprint)
|
|
- Minor visual inconsistencies
|
|
- Non-critical microinteraction issues
|
|
- Performance degradation in test execution
|
|
|
|
### Low (Backlog)
|
|
- Cosmetic issues not affecting functionality
|
|
- Test flakiness requiring investigation
|
|
- Documentation gaps
|
|
|
|
## Ownership
|
|
|
|
### Primary Owner
|
|
- **UI/UX Team Lead**: Overall test suite health and strategy
|
|
|
|
### Component Owners
|
|
- **Core Journeys**: Frontend team
|
|
- **Accessibility**: Accessibility specialist + Frontend team
|
|
- **Responsive Design**: Frontend team + UX designer
|
|
- **Modal Experience**: Frontend team
|
|
- **Microinteractions**: Frontend team
|
|
|
|
### CI/CD Integration
|
|
- **DevOps Team**: CI pipeline configuration and artifact management
|
|
|
|
## Triage Process
|
|
|
|
### Step 1: Detection (Automated)
|
|
1. CI pipeline runs tests on PR or main branch
|
|
2. Failures are reported in GitHub Actions
|
|
3. Artifacts (screenshots, videos, traces) are uploaded
|
|
4. Notifications sent to #ui-regression-alerts channel
|
|
|
|
### Step 2: Initial Assessment (Within 2 hours)
|
|
1. Check if failure is reproducible locally
|
|
2. Review failure artifacts in Playwright report
|
|
3. Determine severity based on impact
|
|
4. Assign to appropriate component owner
|
|
|
|
### Step 3: Investigation
|
|
1. Review test logs and artifacts
|
|
2. Check recent commits for related changes
|
|
3. Attempt local reproduction
|
|
4. Document findings in issue
|
|
|
|
### Step 4: Resolution
|
|
1. **Critical**: Fix immediately, re-run tests
|
|
2. **High**: Fix within 24 hours
|
|
3. **Medium**: Schedule for next sprint
|
|
4. **Low**: Add to backlog with priority
|
|
|
|
### Step 5: Verification
|
|
1. Re-run failing tests
|
|
2. Verify fix doesn't introduce new issues
|
|
3. Update test if it was a false positive
|
|
4. Document resolution
|
|
|
|
## Artifact Access
|
|
|
|
### Playwright Report
|
|
- **Location**: GitHub Actions artifacts
|
|
- **Retention**: 14 days (smoke), 30 days (full)
|
|
- **Access**: Download from workflow run page
|
|
|
|
### Viewing Locally
|
|
```bash
|
|
# Download and extract artifact
|
|
cd e2e
|
|
npx playwright show-report playwright-report/
|
|
```
|
|
|
|
### Key Artifacts
|
|
- **trace.zip**: Full trace with DOM snapshots, network, console
|
|
- **test-failed-*.png**: Screenshot at failure point
|
|
- **video.webm**: Video recording of test execution
|
|
|
|
## Common Failure Patterns
|
|
|
|
### Flaky Tests
|
|
- **Symptom**: Passes on retry
|
|
- **Action**: Increase timeouts, add waits, stabilize selectors
|
|
- **Owner**: Test maintainer
|
|
|
|
### Environment Issues
|
|
- **Symptom**: Tests pass locally but fail in CI
|
|
- **Action**: Check CI environment, browser versions, dependencies
|
|
- **Owner**: DevOps + Test maintainer
|
|
|
|
### Application Regressions
|
|
- **Symptom**: Consistent failures across runs
|
|
- **Action**: Identify breaking change, fix application code
|
|
- **Owner**: Component owner
|
|
|
|
### Test Data Issues
|
|
- **Symptom**: Tests fail due to missing/changed data
|
|
- **Action**: Update test fixtures, ensure deterministic data
|
|
- **Owner**: Test maintainer
|
|
|
|
## Communication
|
|
|
|
### Slack Channels
|
|
- `#ui-regression-alerts`: Automated failure notifications
|
|
- `#frontend-team`: Discussion of UI issues
|
|
- `#qa-team`: Test-related discussions
|
|
|
|
### Issue Labels
|
|
- `ui-regression`: UI/UX test failures
|
|
- `accessibility`: WCAG-related issues
|
|
- `responsive`: Layout/breakpoint issues
|
|
- `flaky-test`: Intermittent failures
|
|
- `ci-blocker`: Blocking CI/CD pipeline
|
|
|
|
## Escalation Path
|
|
|
|
1. **Component Owner** investigates and attempts fix
|
|
2. **UI/UX Team Lead** reviews if not resolved in 4 hours
|
|
3. **Engineering Manager** escalates if blocking release
|
|
4. **CTO** involved for critical production issues
|
|
|
|
## Prevention
|
|
|
|
### Pre-merge Checks
|
|
- Run smoke tests locally before pushing
|
|
- Review visual changes with design team
|
|
- Test across themes and breakpoints for UI changes
|
|
|
|
### Monitoring
|
|
- Weekly review of test flakiness metrics
|
|
- Monthly review of test coverage
|
|
- Quarterly review of test strategy
|
|
|
|
## Contact
|
|
|
|
- **UI/UX Test Suite**: ui-team@clawfort.ai
|
|
- **CI/CD Issues**: devops@clawfort.ai
|
|
- **Emergency Escalation**: engineering-manager@clawfort.ai
|