Skip to content

Test Cases: Hỗ trợ khách hàng

ModuleCORE-13URDHỗ trợ khách hàng URD

NOTE

Trạng thái module là In-progress và backend hiện không build, nên đây là các test case đã lên kế hoạch/thiết kế — không cái nào đã được thực thi trên một dịch vụ đang chạy. Chúng định nghĩa mục tiêu xác minh cho khi build được sửa.

1. Tóm tắt độ phủ

Khu vựcYêu cầu URDTest caseĐã phủ
Quản lý ticket (TKT)1217
Tin nhắn ticket (MSG)56
Danh mục, Thẻ & Ưu tiên (CAT)57⚠️
Quản lý SLA (SLA)109⚠️
Quản lý agent (AGT)1012⚠️
Cơ sở tri thức (KB)77⚠️
Khảo sát & Phản hồi (SRV)65⚠️
Yêu cầu tính năng (FR)55⚠️
Đền bù (CMP)44⚠️
Thông báo (NTF)55⚠️
Kiểm soát truy cập (xuyên-suốt)4

⚠️ gắn cờ các khu vực có ít nhất một yêu cầu Must không có test case — xem §3 Truy vết.

2. Test Cases

TC-<AREA>-NNN khớp với URD-<AREA>-NNN. Ưu tiên = P1 (nghiêm trọng) / P2 (lớn) / P3 (nhỏ).

TC IDURD refKịch bảnCác bướcKỳ vọngP
TC-TKT-001URD-TKT-001Tạo ticket1. Là khách hàng, tạo ticket với tiêu đề, mô tả, danh mục, ưu tiên MediumTicket lưu là OPEN; merchant được đặt; SLA tracker tạo với thời hạn phản-hồi-đầuP1
TC-TKT-002URD-TKT-002Phạm vi merchant1. Khách hàng của Merchant A tạo một ticketTicket theo phạm vi Merchant A; agent Merchant B không thấy được nóP1
TC-TKT-003URD-TKT-003Ticket agent-tạo1. Agent tạo một ticket thay mặt một khách hàngTicket được lưu; loại người báo = agentP1
TC-TKT-004URD-TKT-001Thiếu tiêu đề (âm tính)1. Tạo ticket không có tiêu đềBị từ chối; lỗi xác thực do thiếu tiêu đềP1
TC-TKT-005URD-TKT-001Danh mục không hợp lệ (âm tính)1. Tạo ticket với danh mục không hợp lệBị từ chối; lỗi báo danh mục không hợp lệP1
TC-TKT-006URD-TKT-004OPEN → ASSIGNED1. Phân công một ticket OPEN cho một agentTrạng thái → ASSIGNED; người phân công và thời gian được ghi nhậnP1
TC-TKT-007URD-TKT-004ASSIGNED → IN_PROGRESS1. Agent gửi trả lời đầu tiênTrạng thái → IN_PROGRESS; thời gian phản-hồi-đầu được ghi nhậnP1
TC-TKT-008URD-TKT-004IN_PROGRESS → WAITING_USER1. Agent đặt chờ-khách-hàngTrạng thái → WAITING_USER; khách hàng được thông báoP1
TC-TKT-009URD-TKT-004WAITING_USER → IN_PROGRESS1. Khách hàng trả lờiTrạng thái → IN_PROGRESS; đồng hồ SLA được cập nhậtP1
TC-TKT-010URD-TKT-004IN_PROGRESS → RESOLVED1. Agent đánh dấu đã giải quyết kèm ghi chúTrạng thái → RESOLVED; chi tiết giải quyết được lưuP1
TC-TKT-011URD-TKT-010RESOLVED → CLOSED (xác nhận)1. Khách hàng xác nhận giải quyếtTrạng thái → CLOSED; chi tiết đóng được ghi nhậnP1
TC-TKT-012URD-TKT-010Tự đóng sau 48h1. Ticket đã giải quyết; 48h trôi qua không phản hồiTrạng thái → CLOSED; tin hệ thống giải thích tự-đóngP2
TC-TKT-013URD-TKT-009Mở lại khi trả lời1. Khách hàng trả lời sau RESOLVEDTrạng thái → IN_PROGRESS (mở lại); sự kiện được ghi nhật kýP2
TC-TKT-014URD-TKT-004Trạng thái cuối (âm tính)1. Thử CLOSED → IN_PROGRESSBị từ chối; CLOSED là cuối cùngP1
TC-TKT-015URD-TKT-004Chuyển đổi không hợp lệ (âm tính)1. Thử OPEN → RESOLVED trực tiếpBị từ chối; chuyển đổi không hợp lệP1
TC-TKT-016URD-TKT-008Dấu vết kiểm toán1. Đưa ticket qua vòng đời đầy đủ 2. Xem sự kiệnMọi chuyển đổi được ghi nhật ký với người thực hiện, trạng thái từ/tới, thời điểmP1
TC-TKT-017URD-TKT-012Xóa-mềm1. Xóa một ticket 2. Truy vấn ticket hoạt độngTicket bị loại khỏi truy vấn hoạt động; thời điểm xóa được đặtP1
TC-MSG-001URD-MSG-001Trả lời khách hàng1. Khách hàng gửi một trả lờiLoại tin nhắn = trả lời khách hàng; agent được thông báoP1
TC-MSG-002URD-MSG-001Trả lời agent1. Agent gửi một trả lờiLoại tin nhắn = trả lời agent; thời gian phản-hồi-đầu cập nhật nếu là đầu tiênP1
TC-MSG-003URD-MSG-002Ghi chú nội bộ ẩn1. Agent thêm ghi chú nội bộ 2. Khách hàng truy vấn tin nhắnGhi chú nội bộ không được trả về cho khách hàngP1
TC-MSG-004URD-MSG-002Ghi chú bởi không-phải-agent (âm tính)1. Khách hàng thử thêm một ghi chú nội bộBị từ chối; chỉ agent có thể thêm ghi chú nội bộP1
TC-MSG-005URD-MSG-003Đính kèm1. Agent trả lời với 2 đính kèmĐính kèm được lưu và trả về trong chi tiết tin nhắnP2
TC-MSG-006URD-MSG-005Tin hệ thống khi chuyển đổi1. Kích hoạt một chuyển đổi trạng tháiTin hệ thống tự thêm với chi tiết chuyển đổiP2
TC-CAT-001URD-CAT-001Tạo danh mục1. Tạo danh mục "Billing" với ưu tiên mặc định HighDanh mục được lưu; slug duy nhấtP1
TC-CAT-002URD-CAT-001Slug trùng (âm tính)1. Tạo danh mục thứ hai với cùng slugBị từ chối; ràng buộc slug duy nhấtP1
TC-CAT-003URD-CAT-001Danh mục con1. Tạo "Refund" dưới "Billing"Danh mục con được lưu với cha được đặtP2
TC-CAT-004URD-CAT-002Ghi đè SLA danh mục1. Danh mục có chính sách SLA riêng 2. Tạo ticket trong nóTracker dùng SLA danh mục, không phải mặc định toàn cụcP2
TC-CAT-005URD-CAT-003Tạo thẻ1. Tạo thẻ "urgent"Thẻ sẵn sàng cho ticketP1
TC-CAT-006URD-CAT-004Thêm thẻ vào ticket1. Agent thêm "urgent" vào một ticketÁnh xạ thẻ được tạoP2
TC-CAT-007URD-CAT-004Gỡ thẻ1. Agent gỡ thẻÁnh xạ thẻ được gỡP2
TC-SLA-001URD-SLA-001Tạo chính sách SLA1. Tạo chính sách (phản hồi 60m, giải quyết 480m)Được lưu; cảnh báo mặc định 75%, nghiêm trọng 90%P1
TC-SLA-002URD-SLA-001Thời gian phản hồi bằng không (âm tính)1. Tạo chính sách với thời gian phản hồi 0Bị từ chối; thời gian phản hồi phải > 0P1
TC-SLA-003URD-SLA-003Đồng hồ giờ-làm-việc1. Chính sách chỉ-giờ-làm-việc 2. Ticket tạo Thứ Bảy 20:00Đồng hồ SLA chỉ đếm giờ làm việcP2
TC-SLA-004URD-SLA-004Tracker khi tạo1. Tạo ticket dưới một chính sáchTracker được tạo; thời hạn = thời-điểm-tạo + thời gian chính sáchP1
TC-SLA-005URD-SLA-006Ghi nhận phản-hồi-đầu1. Agent trả lời tại T+30mThời gian phản-hồi-đầu được ghi nhận; trạng thái OKP1
TC-SLA-006URD-SLA-005Ngưỡng cảnh báo1. 75% thời gian phản hồi đã trôi, không trả lời 2. Monitor chạyTrạng thái SLA = cảnh báo; agent được thông báoP1
TC-SLA-007URD-SLA-005Vi phạm + leo thang L11. Thời hạn đã trôi, không trả lời 2. Monitor chạyTrạng thái = vi phạm; leo thang L1 được tạoP1
TC-SLA-008URD-SLA-007Leo thang L1 → L21. Ngưỡng L1 đã trôi 2. Monitor chạyLeo thang L2 được tạo; quản lý được thông báoP1
TC-SLA-009URD-SLA-008Leo thang thủ công1. Quản lý leo thang thủ côngLoại leo thang = thủ công; trạng thái → ESCALATEDP2
TC-AGT-001URD-AGT-001Tạo agent1. Tạo agent cho một người dùngHồ sơ được lưu; trạng thái offline; rảnhP1
TC-AGT-002URD-AGT-001Agent trùng (âm tính)1. Tạo agent thứ hai cho cùng người dùngBị từ chối; một agent cho mỗi người dùngP1
TC-AGT-003URD-AGT-002Đặt khả dụng1. Agent đặt trạng thái onlineTrạng thái online; đủ điều kiện phân côngP1
TC-AGT-004URD-AGT-003Kỹ năng + giới hạn1. Đặt kỹ năng và ticket đồng thời tối đaTrường được lưu; dùng bởi định tuyến skill-basedP2
TC-AGT-005URD-AGT-010Giới hạn khối lượng1. Agent ở ticket tối đa 2. Tự phân công chạyAgent bị bỏ qua; cái đủ điều kiện tiếp theo được chọnP1
TC-AGT-006URD-AGT-004Tạo nhóm1. Tạo "Billing Team" và thêm hai agentNhóm được tạo; cả hai thành viên được lưuP1
TC-AGT-007URD-AGT-004Gỡ khỏi nhóm1. Gỡ một agent khỏi nhómThành viên được gỡ (xóa-mềm)P1
TC-AGT-008URD-AGT-006Định tuyến round-robin1. Ba ticket đến tuần tựPhân công theo vòng xoay A → B → AP1
TC-AGT-009URD-AGT-006Định tuyến skill-based1. Danh mục yêu cầu "billing" 2. Tự phân côngChỉ agent có kỹ năng billing được xét; tải thấp nhất thắngP1
TC-AGT-010URD-AGT-006Định tuyến load-balanced1. Nhiều agent rảnhAgent có tải hiện tại thấp nhất được chọnP2
TC-AGT-011URD-AGT-007Thời điểm tự phân công1. Ticket đến với quy tắc đã cấu hìnhPhân công trong 2 phút; trạng thái → ASSIGNEDP1
TC-AGT-012URD-AGT-007Không có agent rảnh1. Mọi agent offline/ở tối đaTicket giữ OPEN; quản lý được thông báoP1
TC-KB-001URD-KB-001Tạo bài viết1. Tạo bài viết nhápĐược lưu; số đếm bằng khôngP2
TC-KB-002URD-KB-002Xuất bản1. Xuất bản một bản nhápTrạng thái → published; thời-điểm-xuất-bản được ghi nhậnP2
TC-KB-003URD-KB-002Lưu trữ1. Lưu trữ một bài viết đã xuất bảnTrạng thái → archived; loại khỏi tìm kiếm công khaiP2
TC-KB-004URD-KB-003Slug trùng (âm tính)1. Tạo bài viết thứ hai với cùng slugBị từ chối; slug duy nhất toàn cụcP2
TC-KB-005URD-KB-004Theo dõi lượt xem1. Khách hàng xem một bài viếtLượt xem được ghi nhận; số lượt xem tăngP3
TC-KB-006URD-KB-006Phản hồi hữu ích1. Gửi "hữu ích"Phản hồi được lưu; số hữu ích +1P3
TC-KB-007URD-KB-006Phản hồi không-hữu-ích1. Gửi "không hữu ích"Phản hồi được lưu; số không-hữu-ích +1P3
TC-SRV-001URD-SRV-001Tạo khảo sát CSAT1. Tạo khảo sát CSAT hoạt động, kích hoạt sau-giải-quyếtKhảo sát được lưu với loại và kích hoạtP2
TC-SRV-002URD-SRV-003Thêm câu hỏi1. Thêm 3 câu hỏiCâu hỏi được lưu; thứ tự được giữP2
TC-SRV-003URD-SRV-004Tự gửi khi giải quyết1. Giải quyết ticket với khảo sát hoạt độngKhảo sát gửi cho người báo; phản hồi được khởi tạoP2
TC-SRV-004URD-SRV-005Gửi phản hồi1. Khách hàng gửi đánh giá và bình luậnPhản hồi được lưu; liên kết tới ticket và khảo sátP2
TC-SRV-005URD-SRV-004Không có khảo sát hoạt động1. Giải quyết ticket không có khảo sát hoạt độngKhông khảo sát nào được kích hoạtP2
TC-FR-001URD-FR-001Gửi yêu cầu tính năng1. Khách hàng gửi một yêu cầuĐược tạo; trạng thái submitted; phiếu bằng khôngP2
TC-FR-002URD-FR-003Bỏ phiếu1. Khách hàng bỏ phiếu một yêu cầuPhiếu được ghi nhận; số đếm +1P2
TC-FR-003URD-FR-003Phiếu trùng (âm tính)1. Cùng khách hàng bỏ phiếu lạiBị từ chối; một phiếu cho mỗi khách hàngP2
TC-FR-004URD-FR-003Hủy phiếu1. Khách hàng đã bỏ phiếu hủy phiếuPhiếu được gỡ; số đếm −1P2
TC-FR-005URD-FR-002Thay đổi trạng thái1. Admin chuyển yêu cầu sang plannedTrạng thái → planned được lưuP2
TC-CMP-001URD-CMP-001Cấp khi vi phạm1. Vi phạm tồn tại 2. Agent cấp tín dụng cửa hàngĐền bù được tạo (pending); liên kết tới ticket + leo thangP2
TC-CMP-002URD-CMP-002Loại đền bù1. Agent cấp một voucher với số tiềnĐược lưu với đúng loại và số tiềnP2
TC-CMP-003URD-CMP-003Hoàn tất1. Đền bù pending được xử lýTrạng thái → completed; thời-điểm-hoàn-tất được ghi nhậnP2
TC-CMP-004URD-CMP-003Hết hạn1. Đền bù pending không được xử lý kịpTrạng thái → expiredP2
TC-NTF-001URD-NTF-001Thời gian thực tới agent1. Ticket phân công cho một agent đang kết nốiAgent nhận sự kiện trực tiếp với chi tiết ticketP1
TC-NTF-002URD-NTF-001Thời gian thực tới khách hàng1. Agent trả lời; khách hàng đang kết nốiKhách hàng nhận thông báo trả lời trực tiếpP1
TC-NTF-003URD-NTF-002Email khi tạo1. Ticket tạo với email được bậtEmail gửi cho người báo với tham chiếu ticketP2
TC-NTF-004URD-NTF-003Opt-out tùy chọn1. Khách hàng opt-out email phân công 2. Ticket được phân côngKhông email; thông báo trực tiếp vẫn được gửiP2
TC-NTF-005URD-NTF-005Giao theo lô1. Xếp hàng 100 thông báo 2. Worker lô chạyTất cả được giao; nhật ký giao theo-từng-người-nhận được tạoP2
TC-ACC-001URD-TKT-002Chặn liên-merchant1. Agent Merchant B truy vấn ticket Merchant ABị cấm / rỗng; không rò rỉ liên-merchantP1
TC-ACC-002URD-MSG-002Ghi chú nội bộ ẩn1. Khách hàng truy vấn tin nhắn gồm ghi chú nội bộGhi chú nội bộ bị loại trừP1
TC-ACC-003URD-AGT-001Phạm vi agent1. Agent Merchant A tạo agent ở Merchant BBị từ chối; theo phạm vi merchant của mìnhP1
TC-ACC-004URD-SLA-001Quyền chính sách SLA1. Không-admin sửa một chính sách SLABị từ chối; không đủ quyềnP1

3. Truy vết

Mọi yêu cầu Must phải ánh xạ tới ≥1 test case. Khoảng trống được gắn cờ rõ ràng.

Yêu cầu URDTest caseTrạng thái
URD-TKT-001TC-TKT-001, TC-TKT-004, TC-TKT-005✅ Đã phủ
URD-TKT-002TC-TKT-002, TC-ACC-001✅ Đã phủ
URD-TKT-003TC-TKT-003✅ Đã phủ
URD-TKT-004TC-TKT-006–010, TC-TKT-014, TC-TKT-015✅ Đã phủ
URD-TKT-005TC-TKT-006, TC-AGT-011✅ Đã phủ
URD-TKT-006TC-TKT-010, TC-TKT-011✅ Đã phủ
URD-TKT-007⚠️ Chưa phủ (làm giàu ngữ cảnh chưa được thực thi)
URD-TKT-008TC-TKT-016✅ Đã phủ
URD-TKT-009 (S)TC-TKT-013✅ Đã phủ
URD-TKT-010 (S)TC-TKT-011, TC-TKT-012✅ Đã phủ
URD-TKT-011 (S)⚠️ Chưa phủ (worker làm giàu)
URD-TKT-012 (S)TC-TKT-017✅ Đã phủ
URD-MSG-001TC-MSG-001, TC-MSG-002✅ Đã phủ
URD-MSG-002TC-MSG-003, TC-MSG-004, TC-ACC-002✅ Đã phủ
URD-MSG-003TC-MSG-005✅ Đã phủ
URD-MSG-004⚠️ Chưa phủ (khẳng định tác giả/loại-tác-giả chỉ ngầm)
URD-MSG-005 (S)TC-MSG-006✅ Đã phủ
URD-CAT-001TC-CAT-001, TC-CAT-002, TC-CAT-003✅ Đã phủ
URD-CAT-002TC-CAT-004✅ Đã phủ
URD-CAT-003TC-CAT-005✅ Đã phủ
URD-CAT-004 (S)TC-CAT-006, TC-CAT-007✅ Đã phủ
URD-CAT-005⚠️ Chưa phủ (cấp ưu tiên không được kiểm thử trực tiếp)
URD-SLA-001TC-SLA-001, TC-SLA-002, TC-ACC-004✅ Đã phủ
URD-SLA-002TC-SLA-001✅ Đã phủ
URD-SLA-003TC-SLA-003✅ Đã phủ
URD-SLA-004TC-SLA-004✅ Đã phủ
URD-SLA-005TC-SLA-006, TC-SLA-007✅ Đã phủ
URD-SLA-006TC-SLA-005✅ Đã phủ
URD-SLA-007TC-SLA-008✅ Đã phủ
URD-SLA-008TC-SLA-009✅ Đã phủ
URD-SLA-009 (S)⚠️ Chưa phủ (quy tắc leo thang chính sách)
URD-SLA-010 (S)TC-CAT-004✅ Đã phủ
URD-AGT-001TC-AGT-001, TC-AGT-002, TC-ACC-003✅ Đã phủ
URD-AGT-002TC-AGT-003✅ Đã phủ
URD-AGT-003TC-AGT-004✅ Đã phủ
URD-AGT-004TC-AGT-006, TC-AGT-007✅ Đã phủ
URD-AGT-005TC-AGT-008–010✅ Đã phủ
URD-AGT-006TC-AGT-008, TC-AGT-009, TC-AGT-010✅ Đã phủ
URD-AGT-007TC-AGT-011, TC-AGT-012✅ Đã phủ
URD-AGT-008 (S)⚠️ Chưa phủ (chỉ số hiệu suất)
URD-AGT-009 (S)⚠️ Chưa phủ (lịch agent)
URD-AGT-010TC-AGT-005✅ Đã phủ
URD-KB-001 (S)TC-KB-001✅ Đã phủ
URD-KB-002 (S)TC-KB-002, TC-KB-003✅ Đã phủ
URD-KB-003 (S)TC-KB-004✅ Đã phủ
URD-KB-004 (S)TC-KB-005✅ Đã phủ
URD-KB-005 (S)⚠️ Chưa phủ (danh mục bài viết)
URD-KB-006 (C)TC-KB-006, TC-KB-007✅ Đã phủ
URD-KB-007 (C)TC-KB-005✅ Đã phủ
URD-SRV-001 (S)TC-SRV-001✅ Đã phủ
URD-SRV-002 (S)TC-SRV-001✅ Đã phủ
URD-SRV-003 (S)TC-SRV-002✅ Đã phủ
URD-SRV-004 (S)TC-SRV-003, TC-SRV-005✅ Đã phủ
URD-SRV-005 (S)TC-SRV-004✅ Đã phủ
URD-SRV-006 (S)⚠️ Chưa phủ (cấp nguồn điểm hài lòng)
URD-FR-001 (S)TC-FR-001✅ Đã phủ
URD-FR-002 (S)TC-FR-005✅ Đã phủ
URD-FR-003 (S)TC-FR-002, TC-FR-003, TC-FR-004✅ Đã phủ
URD-FR-004 (S)⚠️ Chưa phủ (liên kết ticket)
URD-FR-005 (C)⚠️ Chưa phủ (ghi chú nội bộ)
URD-CMP-001 (S)TC-CMP-001✅ Đã phủ
URD-CMP-002 (S)TC-CMP-002✅ Đã phủ
URD-CMP-003 (S)TC-CMP-003, TC-CMP-004✅ Đã phủ
URD-CMP-004 (S)TC-CMP-001✅ Đã phủ
URD-NTF-001TC-NTF-001, TC-NTF-002✅ Đã phủ
URD-NTF-002 (S)TC-NTF-003✅ Đã phủ
URD-NTF-003 (S)TC-NTF-004✅ Đã phủ
URD-NTF-004 (S)⚠️ Chưa phủ (mẫu)
URD-NTF-005 (S)TC-NTF-005✅ Đã phủ

Khoảng trống yêu-cầu-Must: URD-TKT-007, URD-MSG-004, URD-CAT-005 chưa có test case riêng — thêm độ phủ khi build được sửa. Các khoảng trống còn lại là Should/Could và có thể hoãn.

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.