Hướng dẫn kiểm thử dành cho Tester
1. Nguyên tắc viết test case
- Traceability 2 chiều: mỗi
TC-phải trỏ về ít nhất mộtFR-/BL-; ngược lại mọi FR bắt buộc phải có tối thiểu 1 TC luồng chính. - Một test case — một mục đích: tách luồng thành công và từng luồng lỗi thành các TC riêng.
- Viết tiêu chí chấp nhận của FR chính là kỳ vọng (Expected Result) của TC.
Cấu trúc TC khuyến nghị:
| Trường | Nội dung |
|---|---|
| TC-ID | TC-<MODULE>-<số> (ví dụ TC-BOOK-004) |
| Liên kết | FR-BOOK-04, BL-PROMO-03 |
| Tiền điều kiện | Đã đăng nhập; có thẻ mặc định; có gói dịch vụ còn giờ |
| Dữ liệu | Dịch vụ: Dọn nhà 3 giờ; mã KM TEST50 |
| Các bước | 1…2…3… |
| Kết quả mong đợi | Xem lại hiển thị 400.000₫ (BL-PROMO-03 ví dụ) |
| Ưu tiên | C / H / M |
2. Môi trường & công cụ
| Hạng mục | Giá trị |
|---|---|
| Môi trường | Staging (UAT) — dữ liệu giống production |
| Thiết bị tối thiểu | 1 iOS + 1 Android, màn hình lớn và nhỏ (≥ 2 kích thước mỗi nền tảng) |
| Ngôn ngữ | Lặp lại các TC quan trọng ở TIẾNG VIỆT và TIẾNG ANH |
| Tài khoản | 1 tài khoản khách thường, 1 khách có gói dịch vụ, 1 tài khoản mới đăng ký |
| Thẻ kiểm thử | Thẻ sandbox của cổng thanh toán (không dùng thẻ thật) |
3. Checklist theo màn hình
Toàn bộ 36 màn hình được liệt kê kèm route + FR liên quan ở Danh mục màn hình — dùng làm checklist đảm bảo mỗi màn hình đều được mở ít nhất một lần trong chu kỳ kiểm thử (kể cả màn rỗng/lỗi).
4. Ma trận kiểm thử theo module
| Module | Luồng chính | Luồng lỗi bắt buộc |
|---|---|---|
| Tài khoản (FR-ACC) | Đăng ký, đăng nhập, Google | Sai mật khẩu, email trùng, token hết hạn |
| Trang chủ (FR-HOME) | Dữ liệu tải đủ, pull-to-refresh | Token rỗng → về Đăng nhập |
| Dịch vụ (FR-SVC) | Giá cập nhật theo tùy chọn | Giờ ngoài khoảng, thiếu tùy chọn bắt buộc |
| Đặt lịch (FR-BOOK) | Tạo đơn thành công, phân trang | Ngày trong quá khứ, thiếu địa chỉ, hủy sai trạng thái |
| Thanh toán (FR-PAY) | Thẻ mặc định, tiền mặt, KM, điểm | Mã KM sai, điểm vượt số dư, thẻ bị xóa giữa chừng |
| Thông báo (FR-NOTI) | Đọc/xóa/badge/deep link | Inbox rỗng, mất mạng khi tải |
| Hồ sơ (FR-PRO) | Sửa hồ sơ, sổ địa chỉ | Ảnh lớn, xóa địa chỉ đang dùng |
| Gói dịch vụ (FR-SUB) | Bật/tắt gia hạn, hủy | Hủy gói rồi đặt đơn mới (giá về gốc) |
5. Kiểm thử phi chức năng
Thực hiện checklist NFR mỗi bản release: mất mạng, token hết hạn giữa phiên, đổi ngôn ngữ, xoay/thu nhỏ màn hình, thiết bị yếu.
6. Hộp kiểm tự động (để tester biết CI đang chặn gì)
Mỗi thay đổi mã nguồn chạy tự động: typecheck, 290 test đơn vị (42 bộ), sàn độ phủ 50%+, ngân sách any ≤ 47, expo-doctor 21/21. Tester vẫn phải kiểm tra trải nghiệm thật trên thiết bị — bộ tự động không thay thế được kiểm thử UI.
7. Báo cáo lỗi
Mỗi bug ghi kèm: thiết bị + hệ điều hành, ngôn ngữ app, môi trường, bước tái hiện, kỳ vọng theo FR-/BL- tương ứng, ảnh/quay màn hình.