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.
Mô tả nghiệp vụ: Một ví dụ về nhập mã PIN ở cây ATM. Nếu người dùng nhập mật khẩu không hợp lệ trong lần thử đầu tiên hoặc lần thứ hai, người dùng sẽ được yêu cầu nhập lại mật khẩu. Nếu người dùng nhập mật khẩu không đúng lần thứ 3, tài khoản sẽ bị chặn. Trong bất kỳ thời điểm nào nếu nhập đúng thì sẽ hiển thị số dư tài khoản.
12345,500,000 VND3| Trạng thái hiện tại | Sự kiện | Trạng thái kế tiếp | Output mong đợi |
|---|---|---|---|
| S0 — Khởi tạo (chưa thử) | Nhập PIN đúng | SUCCESS | Hiển thị số dư 5,500,000 VND |
| S0 — Khởi tạo | Nhập PIN sai (lần 1) | S1 — Đã sai 1 lần | Wrong PIN. 2 attempts remaining |
| S1 — Đã sai 1 lần | Nhập PIN đúng | SUCCESS | Hiển thị số dư |
| S1 — Đã sai 1 lần | Nhập PIN sai (lần 2) | S2 — Đã sai 2 lần | Wrong PIN. 1 attempt remaining |
| S2 — Đã sai 2 lần | Nhập PIN đúng | SUCCESS | Hiển thị số dư |
| S2 — Đã sai 2 lần | Nhập PIN sai (lần 3) | BLOCKED | Account blocked. Please contact your bank. |
| BLOCKED | Click submit (kể cả PIN đúng) | BLOCKED (giữ nguyên) | Không thể submit / form bị disable |
| SUCCESS | Click submit lần nữa | SUCCESS (giữ nguyên) | Form bị lock — không thể submit lại |
2 attempts remaining (số nhiều) vs 1 attempt remaining (số ít) — đối chiếu chính xác.attempt vs attempts.Form thực hành chỉ dành cho học viên đã đăng nhập.
Tab này chứa danh sách các lỗi đã cài cắm trong form. Vui lòng nhập mã giảng viên để mở khóa. Mã sẽ ghi nhớ trong phiên làm việc — chỉ cần nhập 1 lần cho cả 3 bài.