QA Practice Lab

Phòng thực hành kiểm thử

Mỗi bài tập là một form/ứng dụng có cài cắm sẵn các lỗi. Học viên thực hành thiết kế test case, thao tác trực tiếp trên form và phát hiện bug.

Danh sách bài tập

Click vào bài tập rồi nhập mã PIN giảng viên đã cấp để bắt đầu.

01
🔒

Bài 1 — Form đăng nhập có Captcha

Form Login với 3 trường: Account, Password, Captcha. Có nhiều lỗi validation và lỗi nghiệp vụ được cài cắm sẵn.

02
🔒

Bài 2 — Form Reset Password

Form yêu cầu đặt lại mật khẩu với Email và Captcha. Tập trung kiểm tra email validation, captcha behavior và message text.

03
🔒

Bài 3 — Form Đổi mật khẩu

Màn hình đổi mật khẩu sau khi click link từ email reset. Tập trung Boundary Value Analysis (8–16 ký tự) và message validation.

04
🔒

Bài 4 — Đổi mật khẩu (cần password hiện tại)

Form đổi mật khẩu khi đã đăng nhập. Yêu cầu password hiện tại + 4 quy tắc strength + lịch sử 3 password gần nhất. Bài có nhiều validation rules nhất.

05
🔒

Bài 5 — Form tạo tài khoản

Form đăng ký account mới với 6 rule cho field Account: case-insensitive, alphanumeric only, no spaces, auto-trim, unique, length 6-12. Tập trung Equivalence Partitioning + Boundary.

06
🔒

Bài 6 — Nhập mã PIN ATM

Mô phỏng cây ATM: 3 lần thử PIN, sai lần 3 sẽ chặn tài khoản. Bài tập kinh điển về State Transition Testing.

07
🔒

Bài 7 — Login với khóa tài khoản tạm thời

Login form: sai 5 lần liên tiếp → khóa 30 phút (demo: 30 giây). Sau unlock có thể thử 5 lần mới. State Transition + Time-based testing.

08
🔒

Bài 8 — Form cập nhật thông tin tài khoản

Form profile với avatar upload, name, birthday (≥18 tuổi), gender, email (check duplicate). Tổng hợp file validation + age calculation + email uniqueness.

09
🔒

Bài 9 — Xác thực OTP có timer

Form OTP 6 chữ số với expire timer + max 3 attempts + Resend cooldown. Tổng hợp State Transition + Time-based + Cooldown. Demo: timer 30s, cooldown 15s.

10
🔒

Bài 10 — Đặt phòng khách sạn

Form booking với date range, room type, guests, conflict detection và price calculation. Tổng hợp Date Validation + Interval Overlap + Decision Table + Boundary.

11
🔒

Bài 11 — Tính chỉ số BMI

Form tính BMI từ chiều cao và cân nặng, phân loại Underweight/Normal/Overweight/Obese.

12
🔒

Bài 12 — Validate số điện thoại Việt Nam

Validate đầu số nhà mạng VN, format +84, normalize separator.

13
🔒

Bài 13 — Tính lãi vay

Tính tiền trả hàng tháng cho 2 phương thức (Equal Installment / Equal Principal).

14
🔒

Bài 14 — Đổi tiền tệ (Currency Converter)

Đổi giữa 6 đồng tiền (VND/USD/EUR/JPY/GBP/KRW). Test round-trip, format số theo currency, swap.

15
🔒

Bài 15 — Shopping Cart với mã giảm giá

Giỏ hàng 3 sản phẩm, 4 loại mã giảm, tính tax, shipping, total. Decision Table heavy.

16
🔒

Bài 16 — Form địa chỉ Tỉnh/Quận/Phường

Cascade dropdown 3 cấp với reset behavior + state management. Đặc trưng app Việt Nam.

17
🔒

Bài 17 — Comment + Rating 5 sao

Form đánh giá với star rating + comment 10-500 ký tự + char counter + submit disable logic.

18
🔒

Bài 18 — Search / Filter / Pagination

Bảng sản phẩm 27 items với search keyword + filter category + sort + pagination 10/page.

19
🔒

Bài 19 — Range Slider lọc giá

Slider 2 thumb cho khoảng giá min-max + đếm sản phẩm. Test 2-thumb constraint, step alignment.

20
🔒

Bài 20 — Multi-step Registration Wizard

Wizard 3 bước với progress bar, validation per-step, back/next, data persistence.

21
🔒

Bài 21 — Quiz / Test với timer

Bài thi 10 câu trắc nghiệm với timer 60s, scoring, pass threshold ≥ 7.

22
🔒

Bài 22 — Bulk Delete với Select-all

Bảng 15 items với checkbox + Select-all + indeterminate state + modal confirm.

23
🔒

Bài 23 — Multi-file Upload

Upload nhiều file với count limit (5), per-file size (3MB), total size (10MB), file types.

24
🔒

Bài 24 — Survey với Conditional Logic

Form khảo sát với fields hiển thị/ẩn theo logic câu trả lời. Decision table + branching + state.

25
🔒

Bài 25 — Drag & Drop Reorder

List 8 task có thể drag để sắp xếp lại + save vào localStorage. UI interaction + state ordering + persistence.