Files
Charon/docs/issues/created/20260202-manual-test-sprint1-e2e-fixes.md
akanealw eec8c28fb3
Some checks failed
Go Benchmark / Performance Regression Check (push) Has been cancelled
Cerberus Integration / Cerberus Security Stack Integration (push) Has been cancelled
Upload Coverage to Codecov / Backend Codecov Upload (push) Has been cancelled
Upload Coverage to Codecov / Frontend Codecov Upload (push) Has been cancelled
CodeQL - Analyze / CodeQL analysis (go) (push) Has been cancelled
CodeQL - Analyze / CodeQL analysis (javascript-typescript) (push) Has been cancelled
CrowdSec Integration / CrowdSec Bouncer Integration (push) Has been cancelled
Docker Build, Publish & Test / build-and-push (push) Has been cancelled
Quality Checks / Auth Route Protection Contract (push) Has been cancelled
Quality Checks / Codecov Trigger/Comment Parity Guard (push) Has been cancelled
Quality Checks / Backend (Go) (push) Has been cancelled
Quality Checks / Frontend (React) (push) Has been cancelled
Rate Limit integration / Rate Limiting Integration (push) Has been cancelled
Security Scan (PR) / Trivy Binary Scan (push) Has been cancelled
Supply Chain Verification (PR) / Verify Supply Chain (push) Has been cancelled
WAF integration / Coraza WAF Integration (push) Has been cancelled
Docker Build, Publish & Test / Security Scan PR Image (push) Has been cancelled
Repo Health Check / Repo health (push) Has been cancelled
History Rewrite Dry-Run / Dry-run preview for history rewrite (push) Has been cancelled
Prune Renovate Branches / prune (push) Has been cancelled
Renovate / renovate (push) Has been cancelled
Nightly Build & Package / sync-development-to-nightly (push) Has been cancelled
Nightly Build & Package / Trigger Nightly Validation Workflows (push) Has been cancelled
Nightly Build & Package / build-and-push-nightly (push) Has been cancelled
Nightly Build & Package / test-nightly-image (push) Has been cancelled
Nightly Build & Package / verify-nightly-supply-chain (push) Has been cancelled
Update GeoLite2 Checksum / update-checksum (push) Has been cancelled
Container Registry Prune / prune-ghcr (push) Has been cancelled
Container Registry Prune / prune-dockerhub (push) Has been cancelled
Container Registry Prune / summarize (push) Has been cancelled
Supply Chain Verification / Verify SBOM (push) Has been cancelled
Supply Chain Verification / Verify Release Artifacts (push) Has been cancelled
Supply Chain Verification / Verify Docker Image Supply Chain (push) Has been cancelled
Monitor Caddy Major Release / check-caddy-major (push) Has been cancelled
Weekly Nightly to Main Promotion / Verify Nightly Branch Health (push) Has been cancelled
Weekly Nightly to Main Promotion / Create Promotion PR (push) Has been cancelled
Weekly Nightly to Main Promotion / Trigger Missing Required Checks (push) Has been cancelled
Weekly Nightly to Main Promotion / Notify on Failure (push) Has been cancelled
Weekly Nightly to Main Promotion / Workflow Summary (push) Has been cancelled
Weekly Security Rebuild / Security Rebuild & Scan (push) Has been cancelled
changed perms
2026-04-22 18:19:14 +00:00

211 lines
5.4 KiB
Markdown
Executable File

# Manual Test Plan: Sprint 1 E2E Test Timeout Fixes
**Created**: 2026-02-02
**Status**: Open
**Priority**: P1
**Assignee**: QA Team
**Sprint**: Sprint 1 Closure / Sprint 2 Week 1
---
## Objective
Manually validate Sprint 1 E2E test timeout fixes in production-like environment to ensure no regression when deployed.
---
## Test Environment
- **Browser(s)**: Chrome 131+, Firefox 133+, Safari 18+
- **OS**: macOS, Windows, Linux
- **Network**: Normal latency (no throttling)
- **Charon Version**: Development branch (Sprint 1 complete)
---
## Test Cases
### TC1: Feature Toggle Interactions
**Objective**: Verify feature toggles work without timeouts or blocking
**Steps**:
1. Navigate to Settings → System
2. Toggle "Cerberus Security" off
3. Wait for success toast
4. Toggle "Cerberus Security" back on
5. Wait for success toast
6. Repeat for "CrowdSec Console Enrollment"
7. Repeat for "Uptime Monitoring"
**Expected**:
- ✅ Toggles respond within 2 seconds
- ✅ No overlay blocking interactions
- ✅ Success toast appears after each toggle
- ✅ Settings persist after page refresh
**Pass Criteria**: All toggles work within 5 seconds with no errors
---
### TC2: Concurrent Toggle Operations
**Objective**: Verify multiple rapid toggles don't cause race conditions
**Steps**:
1. Navigate to Settings → System
2. Quickly toggle "Cerberus Security" on → off → on
3. Verify final state matches last toggle
4. Toggle "CrowdSec Console" and "Uptime" simultaneously (within 1 second)
5. Verify both toggles complete successfully
**Expected**:
- ✅ Final toggle state is correct
- ✅ No "propagation timeout" errors
- ✅ Both concurrent toggles succeed
- ✅ UI doesn't freeze or become unresponsive
**Pass Criteria**: All operations complete within 10 seconds
---
### TC3: Config Reload During Toggle
**Objective**: Verify config reload overlay doesn't permanently block tests
**Steps**:
1. Navigate to Proxy Hosts
2. Create a new proxy host (triggers config reload)
3. While config is reloading (overlay visible), immediately navigate to Settings → System
4. Attempt to toggle "Cerberus Security"
**Expected**:
- ✅ Overlay appears during config reload
- ✅ Toggle becomes interactive after overlay disappears (within 5 seconds)
- ✅ Toggle interaction succeeds
- ✅ No "intercepts pointer events" errors in browser console
**Pass Criteria**: Toggle succeeds within 10 seconds of overlay appearing
---
### TC4: Cross-Browser Feature Flag Consistency
**Objective**: Verify feature flags work identically across browsers
**Steps**:
1. Open Charon in Chrome
2. Toggle "Cerberus Security" off
3. Open Charon in Firefox (same account)
4. Verify "Cerberus Security" shows as off
5. Toggle "Uptime Monitoring" on in Firefox
6. Refresh Chrome tab
7. Verify "Uptime Monitoring" shows as on
**Expected**:
- ✅ State syncs across browsers within 3 seconds
- ✅ No discrepancies in toggle states
- ✅ Both browsers can modify settings
**Pass Criteria**: Settings sync across browsers consistently
---
### TC5: DNS Provider Form Fields (Firefox)
**Objective**: Verify DNS provider form fields are accessible in Firefox
**Steps**:
1. Open Charon in Firefox
2. Navigate to DNS → Providers
3. Click "Add Provider"
4. Select provider type "Webhook"
5. Verify "Create URL" field appears
6. Select provider type "RFC 2136"
7. Verify "DNS Server" field appears
8. Select provider type "Script"
9. Verify "Script Path/Command" field appears
**Expected**:
- ✅ All provider-specific fields appear within 2 seconds
- ✅ Fields are properly labeled
- ✅ Fields are keyboard accessible (Tab navigation works)
**Pass Criteria**: All fields appear and are accessible in Firefox
---
## Known Issues to Watch For
1. **Advanced Scenarios**: Edge case tests for 500 errors and concurrent operations may still have minor issues - these are Sprint 2 backlog items
2. **WebKit**: Some intermittent failures on WebKit (Safari) - acceptable, documented for Sprint 2
3. **DNS Provider Labels**: Label text/ID mismatches possible - deferred to Sprint 2
---
## Success Criteria
**PASS** if:
- All TC1-TC5 test cases pass
- No Critical (P0) bugs discovered
- Performance is acceptable (interactions <5 seconds)
**FAIL** if:
- Any TC1-TC3 fails consistently (>50% failure rate)
- New Critical bugs discovered
- Timeouts or blocking issues reappear
---
## Reporting
**Format**: GitHub Issue
**Template**:
```markdown
## Manual Test Results: Sprint 1 E2E Fixes
**Tester**: [Name]
**Date**: [YYYY-MM-DD]
**Environment**: [Browser/OS]
**Build**: [Commit SHA]
### Results
- [ ] TC1: Feature Toggle Interactions - PASS/FAIL
- [ ] TC2: Concurrent Toggle Operations - PASS/FAIL
- [ ] TC3: Config Reload During Toggle - PASS/FAIL
- [ ] TC4: Cross-Browser Consistency - PASS/FAIL
- [ ] TC5: DNS Provider Forms (Firefox) - PASS/FAIL
### Issues Found
1. [Issue description]
- Severity: P0/P1/P2/P3
- Reproduction steps
- Screenshots/logs
### Overall Assessment
[PASS/FAIL with justification]
### Recommendation
[GO for deployment / HOLD pending fixes]
```
---
## Next Steps
1. **Sprint 2 Week 1**: Execute manual tests
2. **If PASS**: Approve for production deployment (after Docker Image Scan)
3. **If FAIL**: Create bug tickets and assign to Sprint 2 Week 2
---
**Notes**:
- This test plan focuses on potential user-facing bugs that automated tests might miss
- Emphasizes cross-browser compatibility and real-world usage patterns
- Complements automated E2E tests, doesn't replace them