Some checks failed
Deploy to Test Environment / deploy-to-test (push) Failing after 12s
276 lines
5.8 KiB
Markdown
276 lines
5.8 KiB
Markdown
# Quick Test Checklist - UI/UX Improvements
|
|
|
|
**Date**: 2026-01-20
|
|
**Estimated Time**: 30-45 minutes
|
|
|
|
---
|
|
|
|
## 🚀 Quick Start
|
|
|
|
### 1. Start Dev Server
|
|
|
|
```bash
|
|
podman exec -it flyer-crawler-dev npm run dev:container
|
|
```
|
|
|
|
Open browser: `http://localhost:5173`
|
|
|
|
### 2. Open DevTools
|
|
|
|
Press F12 or Ctrl+Shift+I
|
|
|
|
---
|
|
|
|
## ✅ Critical Tests (15 minutes)
|
|
|
|
### Test A: Onboarding Tour Works
|
|
|
|
**Time**: 5 minutes
|
|
|
|
1. DevTools → Application → Local Storage
|
|
2. Delete key: `flyer_crawler_onboarding_completed`
|
|
3. Refresh page (F5)
|
|
4. **PASS if**: Tour modal appears with 6 steps
|
|
5. Click through all steps or skip
|
|
6. **PASS if**: Tour closes and localStorage key is saved
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test B: Mobile Tab Bar Works
|
|
|
|
**Time**: 5 minutes
|
|
|
|
1. DevTools → Toggle Device Toolbar (Ctrl+Shift+M)
|
|
2. Select "iPhone SE" (375px width)
|
|
3. Refresh page
|
|
4. **PASS if**: Bottom tab bar visible with 4 tabs
|
|
5. Click each tab: Home, Deals, Lists, Profile
|
|
6. **PASS if**: Each tab navigates correctly and highlights
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test C: Desktop Layout Unchanged
|
|
|
|
**Time**: 3 minutes
|
|
|
|
1. Set browser width to 1440px (exit device mode)
|
|
2. Refresh page
|
|
3. **PASS if**:
|
|
- No bottom tab bar visible
|
|
- Left sidebar (flyer list) visible
|
|
- Right sidebar (widgets) visible
|
|
- 3-column layout intact
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test D: Dark Mode Works
|
|
|
|
**Time**: 2 minutes
|
|
|
|
1. Click dark mode toggle in header
|
|
2. Navigate: Home → Deals → Lists → Profile
|
|
3. **PASS if**: All pages have dark backgrounds, light text
|
|
4. Toggle back to light mode
|
|
5. **PASS if**: All pages return to light theme
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
## 🔍 Detailed Tests (30 minutes)
|
|
|
|
### Test 1: Tour Features
|
|
|
|
**Time**: 5 minutes
|
|
|
|
- [ ] Tour step 1 points to Flyer Uploader
|
|
- [ ] Tour step 2 points to Extracted Data Table
|
|
- [ ] Tour step 3 points to Watch button
|
|
- [ ] Tour step 4 points to Watched Items List
|
|
- [ ] Tour step 5 points to Price Chart
|
|
- [ ] Tour step 6 points to Shopping List
|
|
- [ ] Skip button works (saves to localStorage)
|
|
- [ ] Tour doesn't repeat after completion
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test 2: Mobile Navigation
|
|
|
|
**Time**: 10 minutes
|
|
|
|
**At 375px (mobile)**:
|
|
|
|
- [ ] Tab bar visible at bottom
|
|
- [ ] Sidebars hidden
|
|
- [ ] Home tab navigates to `/`
|
|
- [ ] Deals tab navigates to `/deals`
|
|
- [ ] Lists tab navigates to `/lists`
|
|
- [ ] Profile tab navigates to `/profile`
|
|
- [ ] Active tab highlighted in teal
|
|
- [ ] Tabs are 44x44px (check DevTools)
|
|
|
|
**At 768px (tablet)**:
|
|
|
|
- [ ] Tab bar still visible
|
|
- [ ] Sidebars still hidden
|
|
|
|
**At 1024px+ (desktop)**:
|
|
|
|
- [ ] Tab bar hidden
|
|
- [ ] Sidebars visible
|
|
- [ ] Layout unchanged
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test 3: New Pages Work
|
|
|
|
**Time**: 5 minutes
|
|
|
|
**DealsPage (`/deals`)**:
|
|
|
|
- [ ] Shows WatchedItemsList component
|
|
- [ ] Shows PriceChart component
|
|
- [ ] Shows PriceHistoryChart component
|
|
- [ ] Can add watched items
|
|
|
|
**ShoppingListsPage (`/lists`)**:
|
|
|
|
- [ ] Shows ShoppingList component
|
|
- [ ] Can create new list
|
|
- [ ] Can add items to list
|
|
- [ ] Can delete list
|
|
|
|
**FlyersPage (`/flyers`)**:
|
|
|
|
- [ ] Shows FlyerList component
|
|
- [ ] Shows FlyerUploader component
|
|
- [ ] Can upload flyer
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test 4: Button Component
|
|
|
|
**Time**: 5 minutes
|
|
|
|
**Find buttons and test**:
|
|
|
|
- [ ] FlyerUploader: "Upload Another Flyer" (primary variant, teal)
|
|
- [ ] ShoppingList: "New List" (secondary variant, gray)
|
|
- [ ] ShoppingList: "Delete List" (danger variant, red)
|
|
- [ ] FlyerUploader: "Stop Watching" (ghost variant, transparent)
|
|
- [ ] Loading states show spinner
|
|
- [ ] Hover states work
|
|
- [ ] Dark mode variants look correct
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
---
|
|
|
|
### Test 5: Admin Routes
|
|
|
|
**Time**: 5 minutes
|
|
|
|
**If you have admin access**:
|
|
|
|
- [ ] Navigate to `/admin`
|
|
- [ ] Tab bar NOT visible on admin pages
|
|
- [ ] Admin dashboard loads correctly
|
|
- [ ] Subpages work: /admin/stats, /admin/corrections
|
|
- [ ] Can navigate back to main app
|
|
- [ ] Admin pages work in mobile view (no tab bar)
|
|
|
|
**If not admin, skip this test**
|
|
|
|
**Result**: [ ] PASS [ ] FAIL [ ] SKIPPED
|
|
|
|
---
|
|
|
|
## 🐛 Error Checks (5 minutes)
|
|
|
|
### Console Errors
|
|
|
|
1. Open DevTools → Console tab
|
|
2. Navigate through entire app
|
|
3. **PASS if**: No red error messages
|
|
4. Warnings are OK (React 19 peer dependency warnings expected)
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
**Errors found**: ******************\_\_\_******************
|
|
|
|
---
|
|
|
|
### Visual Glitches
|
|
|
|
Check for:
|
|
|
|
- [ ] No white boxes in dark mode
|
|
- [ ] No overlapping elements
|
|
- [ ] Text is readable (good contrast)
|
|
- [ ] Images load correctly
|
|
- [ ] No layout jumping/flickering
|
|
|
|
**Result**: [ ] PASS [ ] FAIL
|
|
|
|
**Issues found**: ******************\_\_\_******************
|
|
|
|
---
|
|
|
|
## 📊 Quick Summary
|
|
|
|
| Test | Result | Priority |
|
|
| -------------------- | ------ | ----------- |
|
|
| A. Onboarding Tour | [ ] | 🔴 Critical |
|
|
| B. Mobile Tab Bar | [ ] | 🔴 Critical |
|
|
| C. Desktop Layout | [ ] | 🔴 Critical |
|
|
| D. Dark Mode | [ ] | 🟡 High |
|
|
| 1. Tour Features | [ ] | 🟡 High |
|
|
| 2. Mobile Navigation | [ ] | 🔴 Critical |
|
|
| 3. New Pages | [ ] | 🟡 High |
|
|
| 4. Button Component | [ ] | 🟢 Medium |
|
|
| 5. Admin Routes | [ ] | 🟢 Medium |
|
|
| Console Errors | [ ] | 🔴 Critical |
|
|
| Visual Glitches | [ ] | 🟡 High |
|
|
|
|
---
|
|
|
|
## ✅ Pass Criteria
|
|
|
|
**Minimum to pass (Critical tests only)**:
|
|
|
|
- All 4 quick tests (A-D) must pass
|
|
- Mobile Navigation (Test 2) must pass
|
|
- No critical console errors
|
|
|
|
**Full pass (All tests)**:
|
|
|
|
- All tests pass or have minor issues only
|
|
- No blocking bugs
|
|
- No data loss or crashes
|
|
|
|
---
|
|
|
|
## 🚦 Final Decision
|
|
|
|
**Overall Status**: [ ] READY FOR PROD [ ] NEEDS FIXES [ ] BLOCKED
|
|
|
|
**Issues blocking production**:
|
|
|
|
1. ***
|
|
2. ***
|
|
3. ***
|
|
|
|
**Sign-off**: ********\_\_\_******** **Date**: ****\_\_\_****
|