Test Cases: Thanh toán & Giao dịch
| Module | CORE-08 | URD | URD Thanh toán & Giao dịch |
|---|
1. Tóm tắt Độ phủ
| Lĩnh vực | Yêu cầu URD | Test case | Đã phủ |
|---|---|---|---|
Vòng đời Thanh toán (PAY) | 6 | 6 | ⚠️ (PAY-006 Planned) |
Credential Nhà cung cấp (PRV) | 3 | 3 | ✅ |
Tài khoản & Ví (WAL) | 5 | 5 | ✅ |
Voucher & Sổ cái (VCH) | 10 | 11 | ✅ |
Nhóm (CAT) | 3 | 3 | ✅ |
URD-PAY-006(hoàn tiền nhà cung cấp) là một yêu cầu Won't / Planned — cố tình chưa phủ tới khi tính năng được xây. Mọi yêu cầu Must đều được phủ.
2. Test Cases
TC-<AREA>-NNNkhớp vớiURD-<AREA>-NNN. Mức ưu tiên = P1 (nghiêm trọng) / P2 (lớn) / P3 (nhỏ).
2.1 Vòng đời Thanh toán (PAY)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-PAY-001 | URD-PAY-001 | Nhà cung cấp báo thành công | 1. Một thanh toán pending tồn tại. 2. Nhà cung cấp gửi một kết quả thành công. | Trạng thái thanh toán thành paid; số tiền khớp đơn | P1 |
| TC-PAY-002 | URD-PAY-002 | Subscriber được thông báo khi thành công | 1. Một subscriber được đăng ký. 2. Một thanh toán thành công. | Subscriber nhận một thông báo payment-success | P1 |
| TC-PAY-003 | URD-PAY-003 | Trạng thái live tới thu ngân | 1. Thu ngân ở màn hình thanh toán. 2. Nhà cung cấp báo paid / failed / expired. | Thu ngân thấy thay đổi trạng thái real-time | P1 |
| TC-PAY-004 | URD-PAY-004 | Kết quả trùng bị bỏ qua | 1. Một kết quả thành công đã được áp. 2. Cùng kết quả gửi lại. | Không hiệu ứng trùng; trạng thái không đổi; không voucher thứ hai | P1 |
| TC-PAY-005 | URD-PAY-005 | Retry webhook khi thất bại | 1. Một endpoint subscriber tạm down. 2. Một event thanh toán bắn. | Gửi được retry với backoff; thất bại được log; xử lý không bị chặn | P2 |
| TC-PAY-006 | URD-PAY-006 | Hoàn tiền nhà cung cấp (Planned) | 1. Một thanh toán ngoài hoàn tất. 2. Chủ yêu cầu một hoàn tiền. | Chưa triển khai — placeholder cho tính năng hoàn tiền dự kiến | P3 |
2.2 Credential Nhà cung cấp (PRV)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-PRV-001 | URD-PRV-001 | Kết nối một nhà cung cấp | 1. Chủ mở provider settings. 2. Nhập credential VNPAY QR MMS. | Nhà cung cấp được kết nối cho merchant | P1 |
| TC-PRV-002 | URD-PRV-002 | Credential masked | 1. Một nhà cung cấp đã kết nối. 2. Chủ xem cấu hình. | Credential được masked; secret đầy đủ không bao giờ hiện | P1 |
| TC-PRV-003 | URD-PRV-003 | Phạm vi theo từng merchant | 1. Hai merchant mỗi cái kết nối một nhà cung cấp. 2. Merchant A xem cấu hình. | Merchant A chỉ thấy credential của chính nó | P2 |
2.3 Tài khoản & Ví (WAL)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-WAL-001 | URD-WAL-001 | Tạo một ví | 1. Chủ thêm một tài khoản CASH (hoặc BANK / QR / POS-di-động). | Tài khoản được tạo với loại và tiền tệ của nó | P1 |
| TC-WAL-002 | URD-WAL-002 | Tài khoản control tồn tại | 1. Một merchant được onboard. | Tài khoản control nội bộ (inventory, COGS) tồn tại tự động | P1 |
| TC-WAL-003 | URD-WAL-003 | Số dư mở + chạy | 1. Tạo một tài khoản với một số dư mở. 2. Post một voucher với nó. | Số dư hiện tại bắt đầu ở giá trị mở và cập nhật sau khi post | P1 |
| TC-WAL-004 | URD-WAL-004 | Định tuyến tài khoản mặc định | 1. Một tài khoản mặc định được đặt. 2. Một thanh toán bán thành công. | Thu tự-post vào tài khoản mặc định | P1 |
| TC-WAL-005 | URD-WAL-005 | Hiển thị giới hạn merchant | 1. Một phi-chủ có truy cập chỉ merchant A. 2. Họ liệt kê tài khoản. | Chỉ tài khoản của merchant A được trả về | P2 |
2.4 Voucher & Sổ cái (VCH)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-VCH-001 | URD-VCH-001 | Voucher cân bằng | 1. Bất kỳ voucher nào được post. | Tổng DEBIT bằng tổng CREDIT | P1 |
| TC-VCH-002 | URD-VCH-002 | Loại voucher | 1. Tạo voucher của mỗi loại. | RECEIPT / PAYMENT / TRANSFER / ADJUSTMENT đều được chấp nhận | P2 |
| TC-VCH-003 | URD-VCH-003 | Tự RECEIPT khi thanh toán | 1. Một thanh toán bán thành công. | Một voucher RECEIPT cân bằng post vào tài khoản mặc định | P1 |
| TC-VCH-004 | URD-VCH-004 | Tự PAYMENT khi nhận PO | 1. Một đơn mua hàng được nhận. | Một voucher PAYMENT cân bằng post | P1 |
| TC-VCH-005 | URD-VCH-005 | Tự voucher khi chuyển tồn | 1. Tồn được xuất cho một lần bán hoặc được điều chỉnh. | Voucher sổ cái khớp post | P1 |
| TC-VCH-006 | URD-VCH-006 | Post idempotent | 1. Một source event được xử lý. 2. Cùng event gửi lại. | Chỉ một voucher tồn tại cho source event đó | P1 |
| TC-VCH-007 | URD-VCH-007 | Đánh số voucher | 1. Post vài voucher cùng loại cho một merchant. | Số tăng theo từng merchant và loại | P2 |
| TC-VCH-008 | URD-VCH-008 | Voucher thủ công | 1. Chủ tạo một draft. 2. Chủ issue nó. | Một voucher cân bằng xuất hiện trong sổ cái với một số thứ tự | P2 |
| TC-VCH-009 | URD-VCH-009 | Void bằng đảo ngược | 1. Một voucher đã issue. 2. Chủ void nó. | Một đảo ngược cân bằng post; bản gốc được giữ | P2 |
| TC-VCH-010 | URD-VCH-010 | Chuyển giữa các tài khoản | 1. Chủ chuyển giữa hai tài khoản. | Một voucher TRANSFER tổng-không ghi cả hai chân | P3 |
| TC-VCH-011 | URD-VCH-001, URD-VCH-006 | Biên độ chính xác + đồng thời | 1. Một thanh toán có số tiền làm tròn ở độ chính xác cao. 2. Hai kết quả tới cùng lúc. | Số dư đối chiếu chính xác; chỉ một voucher được post; không race làm hỏng sổ cái | P1 |
2.5 Nhóm (CAT)
| TC ID | URD ref | Kịch bản | Các bước | Kỳ vọng | P |
|---|---|---|---|---|---|
| TC-CAT-001 | URD-CAT-001 | Nhóm seed | 1. Xem nhóm cho một merchant mới. | 14 nhóm hệ thống có mặt | P1 |
| TC-CAT-002 | URD-CAT-001 | Nhóm seed được bảo vệ | 1. Thử gỡ một nhóm seed. | Gỡ bị từ chối | P1 |
| TC-CAT-003 | URD-CAT-002, URD-CAT-003 | Nhóm có kiểu + tùy chỉnh | 1. Chủ thêm một nhóm INCOME và EXPENSE tùy chỉnh, một cái lồng dưới một cha. | Nhóm tùy chỉnh được tạo với kiểu và phân cấp đúng | P2 |
3. Truy vết
Mỗi yêu cầu Must ánh xạ tới ≥1 test case.
URD-PAY-006là một mục Won't/Planned, cố tình chưa phủ.
| Yêu cầu URD | Test case | Trạng thái |
|---|---|---|
| URD-PAY-001 | TC-PAY-001 | ✅ Đã phủ |
| URD-PAY-002 | TC-PAY-002 | ✅ Đã phủ |
| URD-PAY-003 | TC-PAY-003 | ✅ Đã phủ |
| URD-PAY-004 | TC-PAY-004, TC-VCH-011 | ✅ Đã phủ |
| URD-PAY-005 | TC-PAY-005 | ✅ Đã phủ |
| URD-PAY-006 | TC-PAY-006 | ⚠️ Planned (Won't — chưa xây) |
| URD-PRV-001 | TC-PRV-001 | ✅ Đã phủ |
| URD-PRV-002 | TC-PRV-002 | ✅ Đã phủ |
| URD-PRV-003 | TC-PRV-003 | ✅ Đã phủ |
| URD-WAL-001 | TC-WAL-001 | ✅ Đã phủ |
| URD-WAL-002 | TC-WAL-002 | ✅ Đã phủ |
| URD-WAL-003 | TC-WAL-003 | ✅ Đã phủ |
| URD-WAL-004 | TC-WAL-004 | ✅ Đã phủ |
| URD-WAL-005 | TC-WAL-005 | ✅ Đã phủ |
| URD-VCH-001 | TC-VCH-001, TC-VCH-011 | ✅ Đã phủ |
| URD-VCH-002 | TC-VCH-002 | ✅ Đã phủ |
| URD-VCH-003 | TC-VCH-003 | ✅ Đã phủ |
| URD-VCH-004 | TC-VCH-004 | ✅ Đã phủ |
| URD-VCH-005 | TC-VCH-005 | ✅ Đã phủ |
| URD-VCH-006 | TC-VCH-006, TC-VCH-011 | ✅ Đã phủ |
| URD-VCH-007 | TC-VCH-007 | ✅ Đã phủ |
| URD-VCH-008 | TC-VCH-008 | ✅ Đã phủ |
| URD-VCH-009 | TC-VCH-009 | ✅ Đã phủ |
| URD-VCH-010 | TC-VCH-010 | ✅ Đã phủ |
| URD-CAT-001 | TC-CAT-001, TC-CAT-002 | ✅ Đã phủ |
| URD-CAT-002 | TC-CAT-003 | ✅ Đã phủ |
| URD-CAT-003 | TC-CAT-003 | ✅ Đã phủ |
Tóm tắt: 27 yêu cầu URD → 28 test case · 26 đã phủ · 1 cố tình chưa phủ (Planned).