| name | requirement-analysis-edge-case-discovery |
| description | null |
Edge Case Discovery
Category: requirement-analysis · Status: 🟢 Active
When to use
Khi rà soát một feature để tìm các trường hợp biên dễ bị bỏ sót.
Steps
- Dữ liệu: empty, null/undefined, 0, chuỗi rất dài, ký tự đặc biệt/emoji.
- Số lượng: 0 phần tử, 1 phần tử, rất nhiều (phân trang, scroll).
- Biên giá trị: min/max, vượt ngưỡng, số âm, ngày quá khứ/tương lai.
- Mạng/hệ thống: timeout, mất kết nối, request trùng, response chậm.
- Quyền & phiên: chưa đăng nhập, hết hạn token, không đủ quyền.
- Concurrency: hai tab cùng sửa, double-click, race condition.
Template
## Edge cases — <feature>
| Nhóm | Case | Hành vi mong đợi |
|------|------|------------------|
| Data | list rỗng | hiển thị empty state |
| Biên | nhập > max | chặn + báo lỗi |
| Mạng | API timeout | retry / thông báo |
| Quyền | token hết hạn | điều hướng login |
Example
Good: Có empty state, chặn quá max, xử lý token hết hạn, chống double-submit.
Avoid: Chỉ test happy path; bỏ qua list rỗng và lỗi mạng.
Checklist