Files
tfm_ainventory/.planning/6-TESTING-PROGRESS.md
Daniel Bedeleanu cbdb2f04f6 fix(auth): use actual hostname instead of localhost in frontend API client
- Modified frontend/lib/api.ts to use window.location.hostname as fallback
- Ensures browser on external IP reaches correct backend HTTPS port
- Allows admin/admin login to work from any access point
- Auth is fully functional and working
2026-04-23 10:39:18 +03:00

5.6 KiB

Phase 6 Testing Progress Report

Status: In Progress
Date: 2026-04-23
Session: Automated + Manual Testing


COMPLETED: Automated Tests (Phase 3 & 4)

Deployment Modes (Phase 3)

  • Start Command - Services launched in background successfully
  • Status Command - All 3 services running with correct PIDs
  • Port Configuration - HTTP: 8916/8917, HTTPS: 8918/8919 ✓
  • Log Files - Created at ./logs/backend.log, frontend.log, caddy.log ✓
  • Process Management - PID file created (.servers.pid) ✓

Network/SSL Access (Phase 4)


NEXT: Manual UI Testing (Phase 1, 2, 5)

Servers Running: All services active
Time Estimate: ~20 minutes

Phase 1: Backend Functionality (CRITICAL)

Access: Open browser to http://localhost:8917

Test 1.1: Create & Delete Item

  1. Click "+" button to add new item
  2. Enter: Name = "Test Item", Category = "Electronics", Quantity = 5
  3. Take note of the item ID
  4. Locate the item in the list
  5. Click delete button (trash icon)
  6. Expected: Item disappears from list, database removes it
  7. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 1.2: Search Items (Ctrl+K)

  1. Add at least 2 items with different names
  2. Press Ctrl+K to open search modal
  3. Type first few letters of an item name
  4. Click on search result
  5. Expected: Item details load correctly, no console errors
  6. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 1.3: Quantity Adjustment

  1. Select any item from inventory list
  2. Look for quantity adjustment controls (+/- buttons)
  3. Click "+" to increase quantity
  4. Click "-" to decrease quantity
  5. Verify numbers update correctly
  6. Expected: Quantity changes immediately, saves to database
  7. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 1.4: Export Snapshot (Excel)

  1. Go to Admin panel (bottom of sidebar)
  2. Click "Export Snapshot" button
  3. Expected: Excel file downloads (.xlsx)
  4. Action: Open downloaded file
  5. Expected: Data visible with columns: ID, Name, Category, Quantity, Location, etc.
  6. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 1.5: Export Audit Trail (Excel)

  1. Go to Admin panel
  2. Click "Export Audit Trail" button
  3. Expected: Excel file downloads (.xlsx)
  4. Action: Open downloaded file
  5. Expected: Audit log visible with columns: Timestamp, User, Action, Item, Details
  6. Result: [ ] PASS [ ] FAIL - Notes: ________________

Phase 2: Frontend UI (HIGH PRIORITY)

Test 2.1: Toast Notifications

  1. Perform a successful action (add item, edit, save)
  2. Look for green toast notification in top-right corner
  3. Expected: Toast appears for 3 seconds, auto-dismisses
  4. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 2.2: Error Handling

  1. Try to add item without a name
  2. Expected: Error toast appears (red), explains the issue
  3. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 2.3: All CRUD Operations

  1. Create: Add new item ✓
  2. Read: Search or view item details ✓
  3. Update: Edit item name, quantity, or category ✓
  4. Delete: Remove item from inventory ✓
  5. Expected: No errors in browser console (F12)
  6. Result: [ ] PASS [ ] FAIL - Notes: ________________

Phase 5: Data Persistence (MEDIUM)

Test 5.1: Data Saved to Correct Location

  1. Add 2-3 items through the UI
  2. In terminal: ls -la data/
  3. Expected: See inventory.db file present
  4. Result: [ ] PASS [ ] FAIL - Notes: ________________

Test 5.2: Data Persists After Restart

  1. Note items currently in inventory
  2. Stop servers: python3 start_servers.py stop
  3. Start servers: python3 start_servers.py start
  4. Wait 5 seconds for services to initialize
  5. Refresh browser: http://localhost:8917
  6. Expected: Same items appear in inventory
  7. Result: [ ] PASS [ ] FAIL - Notes: ________________

Summary of Automated Test Results

Category Tests Status
Deployment Modes 5 ALL PASS
Network/SSL 6 ALL PASS
Backend API 1 RESPONSIVE

Instructions for Next Steps

  1. Open browser: http://localhost:8917
  2. Run tests: Follow checklist above in order
  3. Note failures: Record [ ] PASS or [ ] FAIL for each test
  4. Check console: F12 → Console tab, watch for errors
  5. When done: Report results below

Manual Test Results (to be filled by user)

Phase 1 Results

  • Test 1.1 (Delete): [ ] PASS [ ] FAIL
  • Test 1.2 (Search): [ ] PASS [ ] FAIL
  • Test 1.3 (Qty Adj): [ ] PASS [ ] FAIL
  • Test 1.4 (Export SS): [ ] PASS [ ] FAIL
  • Test 1.5 (Audit): [ ] PASS [ ] FAIL

Phase 1 Summary: ________________

Phase 2 Results

  • Test 2.1 (Toast): [ ] PASS [ ] FAIL
  • Test 2.2 (Errors): [ ] PASS [ ] FAIL
  • Test 2.3 (CRUD): [ ] PASS [ ] FAIL

Phase 2 Summary: ________________

Phase 5 Results

  • Test 5.1 (Data Location): [ ] PASS [ ] FAIL
  • Test 5.2 (Persistence): [ ] PASS [ ] FAIL

Phase 5 Summary: ________________


Overall Phase 6 Status

Automated Tests: 12/12 PASS
Manual Tests: Awaiting results
Ready for Production: Pending manual test results


Generated: 2026-04-23
Automated by Claude
Manual testing checklist ready