# 📋 BẢNG GHI CHÚ TEST DATA - MANUAL TESTING

---

## 📌 HƯỚNG DẪN SỬ DỤNG

> **Mục đích:** Template này giúp tester manual ghi chép và quản lý test data một cách có hệ thống cho từng tính năng cần kiểm thử.
>
> **Cách sử dụng:**
> - Sao chép file này và đặt tên theo tính năng: `TestData_[TenTinhNang]_[NgayTao].md`
> - Điền thông tin vào các ô trống `___` hoặc thêm dòng mới vào bảng
> - Cột **Kết quả mong đợi** điền trạng thái hệ thống sau khi thực hiện hành động
> - Cột **Ghi chú** dùng để bổ sung bug ID, môi trường test, hoặc lưu ý đặc biệt
> - Đánh dấu `✅` nếu pass, `❌` nếu fail, `⏳` nếu chưa test vào cột trạng thái

**Thông tin chung:**

| Mục | Nội dung |
|-----|----------|
| **Tính năng** | Đăng nhập (Login) |
| **Người tạo** | ___ |
| **Ngày tạo** | ___ |
| **Phiên bản** | ___ |
| **Môi trường** | Dev / Staging / Production |
| **Cập nhật lần cuối** | ___ |

---

## 1️⃣ DATA HỢP LỆ (Valid Data)

> **Mô tả:** Dữ liệu đúng định dạng, đúng nghiệp vụ — hệ thống phải xử lý thành công.

| STT | Trường | Giá trị Test | Kết quả Mong đợi | Trạng thái | Ghi chú |
|-----|--------|-------------|-----------------|-----------|---------|
| 1 | Email | `user@example.com` | Đăng nhập thành công, chuyển đến trang Dashboard | ⏳ | Tài khoản đã kích hoạt |
| 2 | Password | `Password@123` | Đăng nhập thành công, hiển thị tên người dùng | ⏳ | Mật khẩu đủ chữ hoa, số, ký tự đặc biệt |
| 3 | Email | `user.name+tag@domain.co.vn` | Đăng nhập thành công | ⏳ | Email có dấu chấm và dấu `+` hợp lệ |
| 4 | Password | `Abcdefgh1!` | Đăng nhập thành công, token được tạo | ⏳ | Mật khẩu đủ 10 ký tự tối thiểu |
| 5 | Email + Password | `admin@company.com` / `Admin@2024!` | Đăng nhập thành công với quyền Admin | ⏳ | Test với tài khoản có role đặc biệt |
| ___ | ___ | ___ | ___ | ⏳ | ___ |

---

## 2️⃣ DATA KHÔNG HỢP LỆ (Invalid Data)

> **Mô tả:** Dữ liệu sai định dạng hoặc không tồn tại — hệ thống phải từ chối và hiển thị thông báo lỗi phù hợp.

| STT | Trường | Giá trị Test | Kết quả Mong đợi | Thông báo Lỗi Mong đợi | Trạng thái | Ghi chú |
|-----|--------|-------------|-----------------|----------------------|-----------|---------|
| 1 | Email | `userexample.com` | Không cho đăng nhập | `"Email không đúng định dạng"` | ⏳ | Thiếu ký tự `@` |
| 2 | Email | `user@` | Không cho đăng nhập | `"Email không đúng định dạng"` | ⏳ | Thiếu domain |
| 3 | Password | `123456` | Không cho đăng nhập | `"Mật khẩu không đúng"` | ⏳ | Mật khẩu không khớp |
| 4 | Email | _(để trống)_ | Không cho submit form | `"Email không được để trống"` | ⏳ | Validate required field |
| 5 | Email + Password | `notexist@email.com` / `AnyPass@1` | Không cho đăng nhập | `"Tài khoản không tồn tại"` | ⏳ | Email chưa đăng ký |
| ___ | ___ | ___ | ___ | ___ | ⏳ | ___ |

---

## 3️⃣ DATA BIÊN GIỚI (Boundary Data)

> **Mô tả:** Dữ liệu tại các điểm giới hạn cho phép — kiểm tra hệ thống xử lý đúng tại ngưỡng Min, Max và các điểm kề biên.

| STT | Trường | Giá trị Test | Min/Max | Loại Biên | Kết quả Mong đợi | Trạng thái | Ghi chú |
|-----|--------|-------------|---------|----------|-----------------|-----------|---------|
| 1 | Password | `Ab1!` | Min = 4 ký tự | **Đúng biên Min** | Chấp nhận, đăng nhập thành công | ⏳ | Mật khẩu đúng bằng giới hạn tối thiểu |
| 2 | Password | `Ab1` | Min = 4 ký tự | **Dưới biên Min (Min - 1)** | Từ chối, hiện lỗi độ dài | ⏳ | 3 ký tự — dưới mức cho phép |
| 3 | Password | `Ab1!x` | Min = 4 ký tự | **Trên biên Min (Min + 1)** | Chấp nhận, đăng nhập thành công | ⏳ | 5 ký tự — trong vùng hợp lệ |
| 4 | Password | `Abcdefgh1!@#$%^&*()Abcdefgh1!@#` | Max = 32 ký tự | **Đúng biên Max** | Chấp nhận, đăng nhập thành công | ⏳ | Mật khẩu đúng bằng giới hạn tối đa |
| 5 | Password | `Abcdefgh1!@#$%^&*()Abcdefgh1!@#X` | Max = 32 ký tự | **Trên biên Max (Max + 1)** | Từ chối hoặc cắt bớt, hiện lỗi | ⏳ | 33 ký tự — vượt giới hạn |
| 6 | Email | `a@b.co` | Min = 6 ký tự | **Đúng biên Min** | Chấp nhận nếu tồn tại | ⏳ | Email ngắn nhất hợp lệ |
| ___ | ___ | ___ | ___ | ___ | ___ | ⏳ | ___ |

---

## 4️⃣ DATA ĐẶC BIỆT (Special Data)

> **Mô tả:** Dữ liệu chứa ký tự đặc biệt, ký tự Unicode, khoảng trắng, hoặc script injection — kiểm tra bảo mật và độ bền của hệ thống.

| STT | Trường | Giá trị Test | Loại Ký tự Đặc biệt | Kết quả Mong đợi | Rủi ro / Mức độ | Trạng thái | Ghi chú |
|-----|--------|-------------|-------------------|-----------------|----------------|-----------|---------|
| 1 | Email | `user<script>alert(1)</script>@test.com` | **XSS Injection** | Từ chối hoặc escape toàn bộ script | 🔴 Cao | ⏳ | Kiểm tra lỗ hổng XSS |
| 2 | Password | `' OR '1'='1` | **SQL Injection** | Từ chối, không cho bypass xác thực | 🔴 Cao | ⏳ | Classic SQL injection payload |
| 3 | Email | `user name@example.com` | **Khoảng trắng giữa chuỗi** | Từ chối, hiện lỗi định dạng | 🟡 Trung bình | ⏳ | Space không hợp lệ trong email |
| 4 | Password | `   ` | **Chỉ toàn khoảng trắng** | Từ chối, không coi là mật khẩu hợp lệ | 🟡 Trung bình | ⏳ | Kiểm tra trim whitespace |
| 5 | Email | `người.dùng@tên-miền.vn` | **Ký tự Unicode / Tiếng Việt** | Từ chối hoặc chấp nhận tùy spec | 🟠 Trung bình | ⏳ | Tùy thuộc RFC và cấu hình server |
| 6 | Password | `😀🔥💯` | **Emoji / Unicode đặc biệt** | Từ chối hoặc encode đúng | 🟡 Trung bình | ⏳ | Kiểm tra encoding UTF-8 |
| ___ | ___ | ___ | ___ | ___ | ___ | ⏳ | ___ |

---

## 📊 TỔNG KẾT THỰC HIỆN

| Phần | Tổng TC | ✅ Pass | ❌ Fail | ⏳ Chưa Test | Tỷ lệ Pass |
|------|---------|--------|--------|------------|-----------|
| 1. Valid Data | 5 | 0 | 0 | 5 | 0% |
| 2. Invalid Data | 5 | 0 | 0 | 5 | 0% |
| 3. Boundary Data | 6 | 0 | 0 | 6 | 0% |
| 4. Special Data | 6 | 0 | 0 | 6 | 0% |
| **Tổng cộng** | **22** | **0** | **0** | **22** | **0%** |

---

## 🐛 DANH SÁCH BUG TÌM THẤY

| Bug ID | STT Test | Mô tả Bug | Mức độ | Trạng thái | Người báo cáo |
|--------|----------|-----------|--------|-----------|--------------|
| BUG-001 | ___ | ___ | 🔴 Critical / 🟠 High / 🟡 Medium / 🟢 Low | Open / Closed | ___ |
| ___ | ___ | ___ | ___ | ___ | ___ |

---

## 📝 GHI CHÚ THÊM

```
[Thêm ghi chú, lưu ý hoặc thông tin bổ sung tại đây]

- Môi trường test: ___
- URL test: ___
- Tài khoản test dùng chung: ___
- Các điều kiện tiên quyết (Preconditions): ___
- Dữ liệu cần chuẩn bị trước khi test: ___
```

---

*📅 Template version 1.0 | Cập nhật: 2024 | Liên hệ: QA Team*