# 🐛 BUG REPORT TEMPLATE

---

## BUG ID
```
BUG-[PROJECT_CODE]-[NUMBER]
```
> 💡 *Ví dụ: BUG-SHOP-001 | Tự động sinh nếu dùng Jira, điền thủ công nếu dùng Redmine*

---

## TITLE
```
[Module/Feature] - Mô tả ngắn gọn lỗi (Không quá 100 ký tự)
```
> 💡 *Ví dụ: [Login] - Không hiển thị thông báo lỗi khi nhập sai mật khẩu quá 5 lần*

---

## ENVIRONMENT

| Thông tin | Chi tiết |
|-----------|----------|
| **OS** | *(Windows 11 / macOS 13 / Ubuntu 22.04 / iOS 16 / Android 13)* |
| **Browser** | *(Chrome 120 / Firefox 121 / Safari 17 / Edge 120)* |
| **App Version** | *(v1.2.3 / Build #456)* |
| **Device** | *(PC / iPhone 14 Pro / Samsung Galaxy S23)* |
| **Resolution** | *(1920x1080 / 390x844)* |
| **Test Environment** | *(DEV / STAGING / UAT / PRODUCTION)* |
| **Test Account** | *(testuser@example.com / Role: Admin)* |

> 💡 *Điền đầy đủ để dev reproduce đúng môi trường. Nếu bug xảy ra trên nhiều môi trường, ghi rõ tất cả*

---

## STEPS TO REPRODUCE

> 💡 *Mỗi bước phải cụ thể, ai đọc cũng làm theo được. Không viết chung chung*

1. Truy cập URL: `https://example.com/login`
2. Nhập username: `testuser@example.com`
3. Nhập password: `WrongPass@123`
4. Click button **"Đăng nhập"**
5. Lặp lại bước 3–4 thêm **4 lần** (tổng cộng 5 lần sai)
6. Quan sát màn hình sau lần thứ 5

---

## EXPECTED RESULT

> 💡 *Hệ thống **nên** làm gì theo đúng spec/requirement? Viết 1–3 câu rõ ràng*

```
Sau 5 lần nhập sai mật khẩu, hệ thống phải:
- Hiển thị thông báo: "Tài khoản bị khóa tạm thời. Vui lòng thử lại sau 15 phút."
- Vô hiệu hóa button "Đăng nhập" trong 15 phút
- Gửi email cảnh báo đến địa chỉ email đã đăng ký
```

---

## ACTUAL RESULT

> 💡 *Hệ thống **thực tế** đang làm gì? Mô tả chính xác những gì quan sát được*

```
Sau 5 lần nhập sai mật khẩu:
- Không hiển thị bất kỳ thông báo nào
- Button "Đăng nhập" vẫn active, cho phép tiếp tục nhập
- Không có email cảnh báo nào được gửi đi
- Console log hiển thị lỗi: "TypeError: lockAccount is not a function (auth.js:142)"
```

---

## SEVERITY

> 💡 *Severity = Mức độ ảnh hưởng kỹ thuật của bug đến hệ thống. **Tester quyết định***

| Mức độ | Ký hiệu | Tiêu chí | Ví dụ |
|--------|---------|----------|-------|
| **Critical** | 🔴 | Crash hệ thống, mất dữ liệu, lỗ hổng bảo mật nghiêm trọng, không có workaround | Không đăng nhập được, thanh toán bị lỗi toàn bộ, lộ dữ liệu user |
| **High** | 🟠 | Chức năng chính bị hỏng, ảnh hưởng nhiều user, có workaround nhưng bất tiện | Không gửi được email xác nhận, filter/search sai kết quả |
| **Medium** | 🟡 | Chức năng phụ bị lỗi, ảnh hưởng một nhóm nhỏ user, có workaround dễ dùng | UI bị vỡ layout trên 1 browser, thông báo sai nội dung |
| **Low** | 🟢 | Lỗi cosmetic, typo, lỗi nhỏ không ảnh hưởng nghiệp vụ | Sai font chữ, icon lệch 2px, tooltip sai chính tả |

**Severity của bug này:** `🟠 High`

---

## PRIORITY

> 💡 *Priority = Thứ tự ưu tiên xử lý. **PM/Lead quyết định** dựa trên business impact*

| Mức độ | Tiêu chí |
|--------|----------|
| **High** | Fix ngay trong sprint hiện tại, không được release nếu chưa fix |
| **Medium** | Fix trong sprint tiếp theo |
| **Low** | Backlog, fix khi có thời gian |

**Priority của bug này:** `High`

> 💡 *Lưu ý: Severity và Priority có thể khác nhau. Bug lỗi typo tên CEO (Low Severity) có thể là High Priority. Bug kỹ thuật phức tạp (High Severity) đôi khi chỉ là Medium Priority nếu ít user ảnh hưởng*

---

## ATTACHMENTS

> 💡 *Đính kèm càng nhiều bằng chứng càng tốt. Không có ảnh = dev khó tin*

| Loại | Tên file | Mô tả |
|------|----------|-------|
| 📸 Screenshot | `bug-001-login-error.png` | Màn hình sau lần đăng nhập thứ 5 |
| 🎥 Screen Recording | `bug-001-reproduce-steps.mp4` | Video reproduce toàn bộ các bước |
| 📄 Log file | `bug-001-console-log.txt` | Console log từ DevTools |
| 📄 Network log | `bug-001-network-har.har` | HAR file từ Network tab DevTools |

---

## NOTES

> 💡 *Thêm thông tin hữu ích không thuộc các mục trên: tần suất lỗi, workaround, liên quan đến bug/task khác*

```
- Tần suất xuất hiện: 10/10 lần reproduce (100%)
- Lần đầu phát hiện: 2024-01-15, sau khi deploy build #455
- Workaround: User có thể reset password để mở khóa tài khoản
- Liên quan: Task SHOP-234 (Implement account lockout feature)
- Đã confirm với BA: Đây là lỗi, không phải thay đổi spec
- Chỉ xảy ra với tài khoản loại "Customer", tài khoản "Admin" không bị ảnh hưởng
```

---

## THÔNG TIN TRACKING

| | |
|--|--|
| **Reported by** | Nguyễn Văn A |
| **Reported date** | 2024-01-15 |
| **Assigned to** | *(Dev phụ trách)* |
| **Fixed date** | *(Để trống)* |
| **Verified by** | *(Để trống)* |
| **Verified date** | *(Để trống)* |
| **Status** | `New` → `In Progress` → `Fixed` → `Verified` → `Closed` |

---

*Template version 1.0 | Liên hệ QA Lead để cập nhật template*