Manual Testing Guide
README.md / E2E-TESTING.md
Ostatnia aktualizacja: 2026-02-24
1. Login
- [ ] Go to
/auth(login page) - [ ] Enter your email
- [ ] Check your email for the magic link
- [ ] Click the link - you should be redirected to the dashboard (
/) - [ ] Check if the top menu shows your email
- [ ] Click "Logout" - you should be redirected back to
/auth
2. DevTestPanel - Access
Development (local testing):
- [ ] The panel should always be visible on the dashboard (/)
Production:
- [ ] Without special URL parameter → panel is hidden
- [ ] With ?devtest=enabled but your email is not in the allowed list → panel is hidden
- [ ] With ?devtest=enabled and your email is in the allowed list → panel is visible
3. DevTestPanel - API Keys Operations
- [ ] In DevTestPanel, find section "API KEYS OPERATIONS"
- [ ] Create API Key:
- [ ] Enter a name (optional) in the text field
- [ ] Click CREATE
- [ ] You should see a success toast with full response JSON
- [ ] Check "Last Response" section - should show the created key data
- [ ] List API Keys:
- [ ] Click FETCH LIST
- [ ] You should see a table with all your API keys (name, usage count, expiry)
- [ ] Check "Last Response" section - should show full response JSON
- [ ] Get Stats:
- [ ] Click FETCH STATS
- [ ] You should see stats displayed (active keys, total API calls, remaining calls)
- [ ] Check "Last Response" section - should show full response JSON
- [ ] Delete API Key:
- [ ] Select a key from the dropdown
- [ ] Click DELETE
- [ ] Confirm deletion in the dialog
- [ ] You should see a success toast with full response JSON
- [ ] The key should disappear from the list
4. DevTestPanel - Integration Endpoints
- [ ] In DevTestPanel, find section "INTEGRATION ENDPOINTS"
- [ ] Increase API Key Usage:
- [ ] Select an API key from the dropdown
- [ ] Enter a count (e.g., 5)
- [ ] Click INCREASE
- [ ] You should see a success toast with full response JSON
- [ ] Check "Last Response" section - should show
{ success: true, message: "..." } - [ ] Check "Current Stats" table - "Total API Calls (Global)" should increase
- [ ] Increase Tryon Usage:
- [ ] Enter a count (e.g., 3)
- [ ] Click INCREASE TRYON
- [ ] You should see a success toast with full response JSON
- [ ] If limit exceeded, check for warnings in the response
- [ ] Check "Last Response" section - should show
{ success: true, message: "...", warnings?: [...] } - [ ] Check "Current Stats" table - "Tryons Used (Period)" should increase
- [ ] Set Product Number:
- [ ] Enter a value (e.g., 10, or 0 for no products)
- [ ] Click SET COUNT
- [ ] You should see a success toast with full response JSON
- [ ] If limit exceeded, check for warnings in the response
- [ ] Check "Last Response" section - should show
{ success: true, message: "...", warnings?: [...] } - [ ] Check "Current Stats" table - "Products Used" should show the new value
5. DevTestPanel - Panel Collapse/Expand
- [ ] The DevTestPanel should be wrapped in an Accordion (MUI)
- [ ] Click the expand/collapse icon to collapse the panel
- [ ] The panel should collapse smoothly
- [ ] Click again to expand - all sections should be visible
6. Activity Page
- [ ] Perform an action (create/delete an API key or change plan)
- [ ] Click "Activity" in the top menu (or go to
/activity) - [ ] You should see a new entry with timestamp and description
- [ ] Check if the activity shows:
- Key name (if you named the key) or last characters of the key
- Plan labels (e.g., "Free" instead of just "free")
- Timestamp of when it happened
7. API Keys Management
- [ ] On the dashboard, click Create API Key
- [ ] Enter a name (optional) and click Create
- [ ] The new key should appear in the table
- [ ] Mobile test: Make the browser window smaller - the table should scroll horizontally
- [ ] Click Delete on a key
- [ ] The key should disappear from the table
- [ ] Go to Activity page - you should see entries for create/delete
8. Stripe Customer Portal
- [ ] On the dashboard, find the "Plan Status" card
- [ ] Click "Manage subscription"
- [ ] Stripe Customer Portal should open in a new window
- [ ] You should see options to:
- Cancel subscription
- Change plan
- View invoices
- Manage payment methods
9. Error Handling
- [ ] In DevTestPanel, try invalid operations:
- [ ] Try to increase API key usage with invalid key → should show error toast
- [ ] Try to set product number with negative value → should show validation error
- [ ] Try to increase tryon usage with count = 0 → should show validation error
- [ ] All errors should show clear, user-friendly messages in toast notifications
- [ ] Check "Last Response" section - should show error response JSON
10. Smart Login Flow (Onboarding)
Flag OFF (default):
- [ ] Login → dashboard directly (no redirect to /onboarding)
- [ ] Navigate to /onboarding → redirect to /
- [ ] POST /api/v1/user/complete-onboarding → 409 (disabled)
Flag ON (toggle in admin panel):
- [ ] New user → login → redirect to /onboarding → choose AI/AR → redirect to dashboard
- [ ] Paid user (backfilled) → login → dashboard directly (no onboarding)
- [ ] Free user without preference → login → redirect to /onboarding
- [ ] Navigate to /activity without onboarding → redirect to /onboarding
- [ ] Navigate to /onboarding with preference already set → redirect to /
- [ ] Network error during submit → error message displayed, can retry
- [ ] Check Slack: "Onboarding Completed" event with preference and visit history
- [ ] Check audit log entry for ONBOARDING_COMPLETED
Runtime toggle (no deploy):
- [ ] Toggle ON→OFF → user with null preference sees dashboard immediately
- [ ] Toggle OFF→ON → user with null preference sees /onboarding
Quick Links
Development:
- Dashboard: http://localhost:4000/
- With DevTestPanel: http://localhost:4000/?devtest=enabled
- Activity: http://localhost:4000/activity
- Pricing: http://localhost:4000/pricing
Production:
- Dashboard: https://dash.wearfits.com/
- Activity: https://dash.wearfits.com/activity
Last updated: 2026-01-21