TEST CASES — Microsite Đổi điểm thi GEARVN 2026

Codename exam-voucher · DOC-QA-TC v1.0 · 2026-06-26 · status: draft

user-mkt-diemthi/web admin-core-ops-frontend-nextjs 40 test cases Form 07-qa-qc/test-cases

Tổng quan

Bộ test case thực thi được cho toàn bộ dự án mkt-diem-thi-cha: public API /api/exam-voucher/*, admin API /api/admin/exam-voucher/*, business logic (scoring/tier/mask/dedup), flow UI và static pages. Mỗi case bám REQ.md + code thực tế.

40
Tổng case
40
⏳ Pending
0
✅ Pass
0
❌ Fail

Môi trường & điều kiện test

Public base URLhttp://localhost:3000 (local) · https://diemthi.xjaofeng.workers.dev (deployed)
Env bắt buộcDATABASE_URL, SCORE_TICKET_SECRET, ADMIN_API_SECRET
CAPTCHA testđặt CAPTCHA_PROVIDER=none để bypass verify server-side; hoặc Turnstile test token + ALLOW_TEST_CAPTCHA=true
Rate-limitchỉ enforce khi có binding RATE_LIMIT_KV (deployed worker). Local không KV → fail-open. Case *-RATELIMIT-* chạy trên worker.
Ticket TTLSCORE_TICKET_TTL_S (default 900s = 15 phút)
Seed SBD (mode demo)06002597, 06009999, 06001000, 06005500, 06004400
Bảng tier (REQ §5.1)T1 <5 = 100k · T2 [5,6) = 200k · T3 [6,7) = 300k · T4 [7,8) = 400k · T5 [8,9) = 500k · T6 [9,10) = 1.000k · T7 =10 = 2.000k
VN_PHONE_REGEX^0[35789]\d{8}$ (10 số, đầu 0 + 3/5/7/8/9)
Admin authBearer ADMIN_API_SECRET ở header Authorization; resend actor qua header x-admin-email

Danh sách test case

Status Pass/Fail chỉ set sau khi chạy và điền Actual. Case Fail → ghi đủ Actual làm repro cho qa-report.