Test Cases: Hỗ trợ khách hàng
| Module | CORE-13 | URD | Hỗ 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ực | Yêu cầu URD | Test case | Đã phủ |
|---|---|---|---|
Quản lý ticket (TKT) | 12 | 17 | ✅ |
Tin nhắn ticket (MSG) | 5 | 6 | ✅ |
Danh mục, Thẻ & Ưu tiên (CAT) | 5 | 7 | ⚠️ |
Quản lý SLA (SLA) | 10 | 9 | ⚠️ |
Quản lý agent (AGT) | 10 | 12 | ⚠️ |
Cơ sở tri thức (KB) | 7 | 7 | ⚠️ |
Khảo sát & Phản hồi (SRV) | 6 | 5 | ⚠️ |
Yêu cầu tính năng (FR) | 5 | 5 | ⚠️ |
Đền bù (CMP) | 4 | 4 | ⚠️ |
Thông báo (NTF) | 5 | 5 | ⚠️ |
| 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>-NNNkhớp vớiURD-<AREA>-NNN. Ưu tiên = P1 (nghiêm trọng) / P2 (lớn) / P3 (nhỏ).
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-TKT-001 | URD-TKT-001 | Tạo ticket | 1. Là khách hàng, tạo ticket với tiêu đề, mô tả, danh mục, ưu tiên Medium | Ticket lưu là OPEN; merchant được đặt; SLA tracker tạo với thời hạn phản-hồi-đầu | P1 |
| TC-TKT-002 | URD-TKT-002 | Phạm vi merchant | 1. Khách hàng của Merchant A tạo một ticket | Ticket theo phạm vi Merchant A; agent Merchant B không thấy được nó | P1 |
| TC-TKT-003 | URD-TKT-003 | Ticket agent-tạo | 1. Agent tạo một ticket thay mặt một khách hàng | Ticket được lưu; loại người báo = agent | P1 |
| TC-TKT-004 | URD-TKT-001 | Thiế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-005 | URD-TKT-001 | Danh 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-006 | URD-TKT-004 | OPEN → ASSIGNED | 1. Phân công một ticket OPEN cho một agent | Trạng thái → ASSIGNED; người phân công và thời gian được ghi nhận | P1 |
| TC-TKT-007 | URD-TKT-004 | ASSIGNED → IN_PROGRESS | 1. Agent gửi trả lời đầu tiên | Trạng thái → IN_PROGRESS; thời gian phản-hồi-đầu được ghi nhận | P1 |
| TC-TKT-008 | URD-TKT-004 | IN_PROGRESS → WAITING_USER | 1. Agent đặt chờ-khách-hàng | Trạng thái → WAITING_USER; khách hàng được thông báo | P1 |
| TC-TKT-009 | URD-TKT-004 | WAITING_USER → IN_PROGRESS | 1. Khách hàng trả lời | Trạng thái → IN_PROGRESS; đồng hồ SLA được cập nhật | P1 |
| TC-TKT-010 | URD-TKT-004 | IN_PROGRESS → RESOLVED | 1. 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ưu | P1 |
| TC-TKT-011 | URD-TKT-010 | RESOLVED → CLOSED (xác nhận) | 1. Khách hàng xác nhận giải quyết | Trạng thái → CLOSED; chi tiết đóng được ghi nhận | P1 |
| TC-TKT-012 | URD-TKT-010 | Tự đóng sau 48h | 1. Ticket đã giải quyết; 48h trôi qua không phản hồi | Trạng thái → CLOSED; tin hệ thống giải thích tự-đóng | P2 |
| TC-TKT-013 | URD-TKT-009 | Mở lại khi trả lời | 1. Khách hàng trả lời sau RESOLVED | Trạng thái → IN_PROGRESS (mở lại); sự kiện được ghi nhật ký | P2 |
| TC-TKT-014 | URD-TKT-004 | Trạng thái cuối (âm tính) | 1. Thử CLOSED → IN_PROGRESS | Bị từ chối; CLOSED là cuối cùng | P1 |
| TC-TKT-015 | URD-TKT-004 | Chuyển đổi không hợp lệ (âm tính) | 1. Thử OPEN → RESOLVED trực tiếp | Bị từ chối; chuyển đổi không hợp lệ | P1 |
| TC-TKT-016 | URD-TKT-008 | Dấu vết kiểm toán | 1. Đưa ticket qua vòng đời đầy đủ 2. Xem sự kiện | Mọ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ểm | P1 |
| TC-TKT-017 | URD-TKT-012 | Xóa-mềm | 1. Xóa một ticket 2. Truy vấn ticket hoạt động | Ticket bị loại khỏi truy vấn hoạt động; thời điểm xóa được đặt | P1 |
| TC-MSG-001 | URD-MSG-001 | Trả lời khách hàng | 1. Khách hàng gửi một trả lời | Loại tin nhắn = trả lời khách hàng; agent được thông báo | P1 |
| TC-MSG-002 | URD-MSG-001 | Trả lời agent | 1. Agent gửi một trả lời | Loạ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ên | P1 |
| TC-MSG-003 | URD-MSG-002 | Ghi chú nội bộ ẩn | 1. Agent thêm ghi chú nội bộ 2. Khách hàng truy vấn tin nhắn | Ghi chú nội bộ không được trả về cho khách hàng | P1 |
| TC-MSG-004 | URD-MSG-002 | Ghi 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-005 | URD-MSG-003 | Đính kèm | 1. 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ắn | P2 |
| TC-MSG-006 | URD-MSG-005 | Tin hệ thống khi chuyển đổi | 1. Kích hoạt một chuyển đổi trạng thái | Tin hệ thống tự thêm với chi tiết chuyển đổi | P2 |
| TC-CAT-001 | URD-CAT-001 | Tạo danh mục | 1. Tạo danh mục "Billing" với ưu tiên mặc định High | Danh mục được lưu; slug duy nhất | P1 |
| TC-CAT-002 | URD-CAT-001 | Slug trùng (âm tính) | 1. Tạo danh mục thứ hai với cùng slug | Bị từ chối; ràng buộc slug duy nhất | P1 |
| TC-CAT-003 | URD-CAT-001 | Danh mục con | 1. Tạo "Refund" dưới "Billing" | Danh mục con được lưu với cha được đặt | P2 |
| TC-CAT-004 | URD-CAT-002 | Ghi đè SLA danh mục | 1. 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ục | P2 |
| TC-CAT-005 | URD-CAT-003 | Tạo thẻ | 1. Tạo thẻ "urgent" | Thẻ sẵn sàng cho ticket | P1 |
| TC-CAT-006 | URD-CAT-004 | Thêm thẻ vào ticket | 1. Agent thêm "urgent" vào một ticket | Ánh xạ thẻ được tạo | P2 |
| TC-CAT-007 | URD-CAT-004 | Gỡ thẻ | 1. Agent gỡ thẻ | Ánh xạ thẻ được gỡ | P2 |
| TC-SLA-001 | URD-SLA-001 | Tạo chính sách SLA | 1. 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-002 | URD-SLA-001 | Thờ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 0 | Bị từ chối; thời gian phản hồi phải > 0 | P1 |
| TC-SLA-003 | URD-SLA-003 | Đồng hồ giờ-làm-việc | 1. 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ệc | P2 |
| TC-SLA-004 | URD-SLA-004 | Tracker khi tạo | 1. Tạo ticket dưới một chính sách | Tracker được tạo; thời hạn = thời-điểm-tạo + thời gian chính sách | P1 |
| TC-SLA-005 | URD-SLA-006 | Ghi nhận phản-hồi-đầu | 1. Agent trả lời tại T+30m | Thời gian phản-hồi-đầu được ghi nhận; trạng thái OK | P1 |
| TC-SLA-006 | URD-SLA-005 | Ngưỡng cảnh báo | 1. 75% thời gian phản hồi đã trôi, không trả lời 2. Monitor chạy | Trạng thái SLA = cảnh báo; agent được thông báo | P1 |
| TC-SLA-007 | URD-SLA-005 | Vi phạm + leo thang L1 | 1. Thời hạn đã trôi, không trả lời 2. Monitor chạy | Trạng thái = vi phạm; leo thang L1 được tạo | P1 |
| TC-SLA-008 | URD-SLA-007 | Leo thang L1 → L2 | 1. Ngưỡng L1 đã trôi 2. Monitor chạy | Leo thang L2 được tạo; quản lý được thông báo | P1 |
| TC-SLA-009 | URD-SLA-008 | Leo thang thủ công | 1. Quản lý leo thang thủ công | Loại leo thang = thủ công; trạng thái → ESCALATED | P2 |
| TC-AGT-001 | URD-AGT-001 | Tạo agent | 1. Tạo agent cho một người dùng | Hồ sơ được lưu; trạng thái offline; rảnh | P1 |
| TC-AGT-002 | URD-AGT-001 | Agent trùng (âm tính) | 1. Tạo agent thứ hai cho cùng người dùng | Bị từ chối; một agent cho mỗi người dùng | P1 |
| TC-AGT-003 | URD-AGT-002 | Đặt khả dụng | 1. Agent đặt trạng thái online | Trạng thái online; đủ điều kiện phân công | P1 |
| TC-AGT-004 | URD-AGT-003 | Kỹ năng + giới hạn | 1. Đặt kỹ năng và ticket đồng thời tối đa | Trường được lưu; dùng bởi định tuyến skill-based | P2 |
| TC-AGT-005 | URD-AGT-010 | Giới hạn khối lượng | 1. Agent ở ticket tối đa 2. Tự phân công chạy | Agent bị bỏ qua; cái đủ điều kiện tiếp theo được chọn | P1 |
| TC-AGT-006 | URD-AGT-004 | Tạo nhóm | 1. Tạo "Billing Team" và thêm hai agent | Nhóm được tạo; cả hai thành viên được lưu | P1 |
| TC-AGT-007 | URD-AGT-004 | Gỡ khỏi nhóm | 1. Gỡ một agent khỏi nhóm | Thành viên được gỡ (xóa-mềm) | P1 |
| TC-AGT-008 | URD-AGT-006 | Định tuyến round-robin | 1. Ba ticket đến tuần tự | Phân công theo vòng xoay A → B → A | P1 |
| TC-AGT-009 | URD-AGT-006 | Định tuyến skill-based | 1. Danh mục yêu cầu "billing" 2. Tự phân công | Chỉ agent có kỹ năng billing được xét; tải thấp nhất thắng | P1 |
| TC-AGT-010 | URD-AGT-006 | Định tuyến load-balanced | 1. Nhiều agent rảnh | Agent có tải hiện tại thấp nhất được chọn | P2 |
| TC-AGT-011 | URD-AGT-007 | Thời điểm tự phân công | 1. Ticket đến với quy tắc đã cấu hình | Phân công trong 2 phút; trạng thái → ASSIGNED | P1 |
| TC-AGT-012 | URD-AGT-007 | Không có agent rảnh | 1. Mọi agent offline/ở tối đa | Ticket giữ OPEN; quản lý được thông báo | P1 |
| TC-KB-001 | URD-KB-001 | Tạo bài viết | 1. Tạo bài viết nháp | Được lưu; số đếm bằng không | P2 |
| TC-KB-002 | URD-KB-002 | Xuất bản | 1. Xuất bản một bản nháp | Trạng thái → published; thời-điểm-xuất-bản được ghi nhận | P2 |
| TC-KB-003 | URD-KB-002 | Lưu trữ | 1. Lưu trữ một bài viết đã xuất bản | Trạng thái → archived; loại khỏi tìm kiếm công khai | P2 |
| TC-KB-004 | URD-KB-003 | Slug trùng (âm tính) | 1. Tạo bài viết thứ hai với cùng slug | Bị từ chối; slug duy nhất toàn cục | P2 |
| TC-KB-005 | URD-KB-004 | Theo dõi lượt xem | 1. Khách hàng xem một bài viết | Lượt xem được ghi nhận; số lượt xem tăng | P3 |
| TC-KB-006 | URD-KB-006 | Phản hồi hữu ích | 1. Gửi "hữu ích" | Phản hồi được lưu; số hữu ích +1 | P3 |
| TC-KB-007 | URD-KB-006 | Phản hồi không-hữu-ích | 1. Gửi "không hữu ích" | Phản hồi được lưu; số không-hữu-ích +1 | P3 |
| TC-SRV-001 | URD-SRV-001 | Tạo khảo sát CSAT | 1. Tạo khảo sát CSAT hoạt động, kích hoạt sau-giải-quyết | Khảo sát được lưu với loại và kích hoạt | P2 |
| TC-SRV-002 | URD-SRV-003 | Thêm câu hỏi | 1. Thêm 3 câu hỏi | Câu hỏi được lưu; thứ tự được giữ | P2 |
| TC-SRV-003 | URD-SRV-004 | Tự gửi khi giải quyết | 1. Giải quyết ticket với khảo sát hoạt động | Khảo sát gửi cho người báo; phản hồi được khởi tạo | P2 |
| TC-SRV-004 | URD-SRV-005 | Gửi phản hồi | 1. Khách hàng gửi đánh giá và bình luận | Phản hồi được lưu; liên kết tới ticket và khảo sát | P2 |
| TC-SRV-005 | URD-SRV-004 | Không có khảo sát hoạt động | 1. Giải quyết ticket không có khảo sát hoạt động | Không khảo sát nào được kích hoạt | P2 |
| TC-FR-001 | URD-FR-001 | Gửi yêu cầu tính năng | 1. 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ông | P2 |
| TC-FR-002 | URD-FR-003 | Bỏ phiếu | 1. Khách hàng bỏ phiếu một yêu cầu | Phiếu được ghi nhận; số đếm +1 | P2 |
| TC-FR-003 | URD-FR-003 | Phiếu trùng (âm tính) | 1. Cùng khách hàng bỏ phiếu lại | Bị từ chối; một phiếu cho mỗi khách hàng | P2 |
| TC-FR-004 | URD-FR-003 | Hủy phiếu | 1. Khách hàng đã bỏ phiếu hủy phiếu | Phiếu được gỡ; số đếm −1 | P2 |
| TC-FR-005 | URD-FR-002 | Thay đổi trạng thái | 1. Admin chuyển yêu cầu sang planned | Trạng thái → planned được lưu | P2 |
| TC-CMP-001 | URD-CMP-001 | Cấp khi vi phạm | 1. 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 thang | P2 |
| TC-CMP-002 | URD-CMP-002 | Loạ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ền | P2 |
| TC-CMP-003 | URD-CMP-003 | Hoàn tất | 1. Đền bù pending được xử lý | Trạng thái → completed; thời-điểm-hoàn-tất được ghi nhận | P2 |
| TC-CMP-004 | URD-CMP-003 | Hết hạn | 1. Đền bù pending không được xử lý kịp | Trạng thái → expired | P2 |
| TC-NTF-001 | URD-NTF-001 | Thời gian thực tới agent | 1. Ticket phân công cho một agent đang kết nối | Agent nhận sự kiện trực tiếp với chi tiết ticket | P1 |
| TC-NTF-002 | URD-NTF-001 | Thời gian thực tới khách hàng | 1. Agent trả lời; khách hàng đang kết nối | Khách hàng nhận thông báo trả lời trực tiếp | P1 |
| TC-NTF-003 | URD-NTF-002 | Email khi tạo | 1. Ticket tạo với email được bật | Email gửi cho người báo với tham chiếu ticket | P2 |
| TC-NTF-004 | URD-NTF-003 | Opt-out tùy chọn | 1. Khách hàng opt-out email phân công 2. Ticket được phân công | Không email; thông báo trực tiếp vẫn được gửi | P2 |
| TC-NTF-005 | URD-NTF-005 | Giao theo lô | 1. Xếp hàng 100 thông báo 2. Worker lô chạy | Tất cả được giao; nhật ký giao theo-từng-người-nhận được tạo | P2 |
| TC-ACC-001 | URD-TKT-002 | Chặn liên-merchant | 1. Agent Merchant B truy vấn ticket Merchant A | Bị cấm / rỗng; không rò rỉ liên-merchant | P1 |
| TC-ACC-002 | URD-MSG-002 | Ghi chú nội bộ ẩn | 1. 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-003 | URD-AGT-001 | Phạm vi agent | 1. Agent Merchant A tạo agent ở Merchant B | Bị từ chối; theo phạm vi merchant của mình | P1 |
| TC-ACC-004 | URD-SLA-001 | Quyền chính sách SLA | 1. Không-admin sửa một chính sách SLA | Bị từ chối; không đủ quyền | P1 |
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 URD | Test case | Trạng thái |
|---|---|---|
| URD-TKT-001 | TC-TKT-001, TC-TKT-004, TC-TKT-005 | ✅ Đã phủ |
| URD-TKT-002 | TC-TKT-002, TC-ACC-001 | ✅ Đã phủ |
| URD-TKT-003 | TC-TKT-003 | ✅ Đã phủ |
| URD-TKT-004 | TC-TKT-006–010, TC-TKT-014, TC-TKT-015 | ✅ Đã phủ |
| URD-TKT-005 | TC-TKT-006, TC-AGT-011 | ✅ Đã phủ |
| URD-TKT-006 | TC-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-008 | TC-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-001 | TC-MSG-001, TC-MSG-002 | ✅ Đã phủ |
| URD-MSG-002 | TC-MSG-003, TC-MSG-004, TC-ACC-002 | ✅ Đã phủ |
| URD-MSG-003 | TC-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-001 | TC-CAT-001, TC-CAT-002, TC-CAT-003 | ✅ Đã phủ |
| URD-CAT-002 | TC-CAT-004 | ✅ Đã phủ |
| URD-CAT-003 | TC-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-001 | TC-SLA-001, TC-SLA-002, TC-ACC-004 | ✅ Đã phủ |
| URD-SLA-002 | TC-SLA-001 | ✅ Đã phủ |
| URD-SLA-003 | TC-SLA-003 | ✅ Đã phủ |
| URD-SLA-004 | TC-SLA-004 | ✅ Đã phủ |
| URD-SLA-005 | TC-SLA-006, TC-SLA-007 | ✅ Đã phủ |
| URD-SLA-006 | TC-SLA-005 | ✅ Đã phủ |
| URD-SLA-007 | TC-SLA-008 | ✅ Đã phủ |
| URD-SLA-008 | TC-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-001 | TC-AGT-001, TC-AGT-002, TC-ACC-003 | ✅ Đã phủ |
| URD-AGT-002 | TC-AGT-003 | ✅ Đã phủ |
| URD-AGT-003 | TC-AGT-004 | ✅ Đã phủ |
| URD-AGT-004 | TC-AGT-006, TC-AGT-007 | ✅ Đã phủ |
| URD-AGT-005 | TC-AGT-008–010 | ✅ Đã phủ |
| URD-AGT-006 | TC-AGT-008, TC-AGT-009, TC-AGT-010 | ✅ Đã phủ |
| URD-AGT-007 | TC-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-010 | TC-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-001 | TC-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.