Test cases: Support tickets (vendor & admin)
Document control
Section titled “Document control”| Version | Date (UTC) | Summary |
|---|---|---|
| 1.0.0 | 2026-05-13 | Initial sheet from Tickets (vendor) |
- Vendor:
/dashboard/support, API/vendor/support-tickets. - Admin:
/dashboard/support-tickets, list + Kanban + detail/:id. - Shared UX: thread chrome, skeleton, overlay,
limit=5,TablePaginationBar.
Scenario catalogue
Section titled “Scenario catalogue”Vendor — list & create
Section titled “Vendor — list & create”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-SUP-001 | Happy | List tickets with filters (status, priority, store_id, search) + pagination | E2E* |
| TC-SUP-002 | Happy | Create ticket with subject + description; appears as open | E2E* |
| TC-SUP-003 | Unhappy | store_id not owned by vendor → 400/403 | Unit |
| TC-SUP-004 | Unhappy | Empty subject/body → validation | Unit + E2E* |
Vendor — thread
Section titled “Vendor — thread”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-SUP-010 | Happy | Open ticket; comments GET newest first; page 1 loads | E2E* |
| TC-SUP-011 | Happy | Pagination limit=5; change page keeps previous messages + overlay (no skeleton flash) | E2E* |
| TC-SUP-012 | Happy | Post reply; thread refetch; progress bar during send | E2E* |
| TC-SUP-013 | Unhappy | Post reply network fail → error + retry | E2E* |
Admin — list & Kanban
Section titled “Admin — list & Kanban”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-SUP-020 | Happy | List view: status tabs + pagination | E2E* |
| TC-SUP-021 | Happy | Kanban: every status column visible; not filtered by list tab; per-column scroll + load more | E2E* |
| TC-SUP-022 | Happy | Drag card to another column → PATCH status success; board consistent | E2E* |
| TC-SUP-023 | Unhappy | Drag to invalid transition (if rules exist) → revert + toast | E2E* |
Admin — detail
Section titled “Admin — detail”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-SUP-030 | Happy | Detail matches vendor discussion UX (SupportDiscussionThreadChrome, same pagination contract) | E2E* |
| TC-SUP-031 | Happy | Header shows status, priority, assignee from API | E2E* |
| TC-SUP-032 | Unhappy | Ticket outside zone/admin scope → 403/404 | Unit |
| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-SUP-040 | Unhappy | DB not enabled → 503 with clear code | Unit |
Coverage checklist (this sheet)
Section titled “Coverage checklist (this sheet)”- Admin Kanban URL deep-link without erroneous
tabparam (see guide) -
FormSelectFieldvendor/store filters on admin board covered - Comment
meta.total_pagesedge cases (empty thread, single page)
Parent index: System test cases (index) · Vendor backend: Vendor backend