Checklist Phân Loại Bug/Defect
Hướng dẫn dành cho Tester Fresher khi log bug lên Jira / Redmine. Hoàn thành checklist, tra bảng so sánh và sử dụng template mẫu để báo cáo lỗi chuẩn xác.
Checklist Phân Loại Trước Khi Log
Lỗi này có thể tái hiện lại không? (Reproducible)
Thực hiện lại đúng các bước, lỗi có xuất hiện nhất quán không? Nếu chỉ xảy ra 1 lần → ghi chú "Intermittent", nếu luôn xuất hiện → log ngay với priority cao hơn.
Đã kiểm tra requirement/spec chưa? Đây là lỗi hay tính năng chưa hoàn thiện?
Đọc lại tài liệu yêu cầu (BRD/SRS). Nếu không có spec rõ ràng → trao đổi BA/PO trước khi log để tránh "bug" trở thành "by design".
Lỗi ảnh hưởng đến bao nhiêu người dùng / luồng nghiệp vụ chính?
Xác định Severity: Critical (toàn bộ hệ thống/chức năng chính sập) → High (ảnh hưởng đáng kể) → Medium (có workaround) → Low (giao diện, text nhỏ).
Đã có ticket tương tự chưa? (Duplicate check)
Tìm kiếm trong Jira/Redmine với từ khóa liên quan. Nếu đã tồn tại ticket → comment/link thêm thông tin thay vì tạo mới. Tránh duplicate làm loãng backlog.
Đã chuẩn bị đủ bằng chứng chưa? (Screenshot / Video / Log)
Tối thiểu cần: 1 screenshot rõ lỗi có highlight + console log (nếu có) + môi trường test (OS, browser, version app). Dev cần đủ thông tin để reproduce mà không cần hỏi lại.
Bảng So Sánh: Bug / Defect / Fault
Ba thuật ngữ thường dùng lẫn nhau nhưng có nghĩa khác nhau trong ngữ cảnh phần mềm.
| Tiêu chí |
Bug
|
Defect
|
Fault
|
|---|---|---|---|
|
Khái niệm
|
Thuật ngữ thông dụng nhất, chỉ bất kỳ sự cố nào khiến phần mềm hoạt động sai so với kỳ vọng. Được dùng rộng rãi trong team dev và tester. Thuật ngữ dân gian |
Lỗi được phát hiện và xác nhận trong quá trình kiểm thử. Là sự lệch lạc giữa kết quả thực tế và kết quả mong đợi theo requirement. Thuật ngữ QA chính thức |
Bước sai, hành động sai, hoặc định nghĩa sai ngay trong code/thiết kế dẫn đến lỗi. Fault là nguyên nhân gốc rễ dẫn đến failure. Thuật ngữ kỹ thuật |
|
Nguồn gốc
|
Có thể xuất phát từ mọi giai đoạn: lập trình, thiết kế, yêu cầu. Thường được phát hiện khi người dùng hoặc tester thực thi phần mềm. |
Xuất phát từ giai đoạn phát triển (coding, design). Defect tồn tại trong code/sản phẩm và được tester tìm ra khi so sánh với specification. |
Xuất phát từ sai lầm của con người (human error) khi viết code, thiết kế logic, hoặc định nghĩa yêu cầu không rõ ràng. |
|
Ai xử lý
|
Tester log và verify sau fix
Developer phân tích và fix
PM/Lead prioritize
|
QA/Tester phát hiện, document và track
Developer sửa code/thiết kế
QA Lead đóng ticket sau regression
|
Developer/Architect phân tích root cause
Tech Lead review và approve fix
BA/PO nếu lỗi từ requirement
|
|
Ví dụ thực tế
|
"Nút Submit không hoạt động khi click vào trang checkout" — tester phát hiện khi test. |
"Hệ thống tính tổng giá sai khi áp dụng coupon giảm giá" — so sánh với spec yêu cầu tính đúng. |
"Developer dùng phép chia integer thay vì float dẫn đến làm tròn sai kết quả" — lỗi trong code. |
|
Dùng trong Jira
|
Issue Type: Bug
Phổ biến nhất, dùng khi chưa xác định rõ loại lỗi |
Issue Type: Defect / Bug
Dùng trong quy trình QA formal, có test case link |
Root Cause Analysis field
Ghi vào trường Root Cause hoặc comment kỹ thuật |
Severity = Mức độ ảnh hưởng kỹ thuật (do Tester đặt)
Priority = Mức độ khẩn cấp cần fix (do PM/Lead đặt)
Lỗi chính tả logo = High Priority, Low Severity. Lỗi ẩn trong module ít dùng = Low Priority, High Severity.
Template Bug Report Mẫu
Công thức: [Module/Màn hình] + Hành vi sai + Điều kiện xảy ra. Không quá 120 ký tự.
Mỗi bước = 1 hành động cụ thể. Ghi rõ data test, URL, role người dùng.
Kết quả đúng theo requirement/spec
Điều gì thực sự xảy ra, bao gồm cả error message
Hệ điều hành
Trình duyệt
Version App
Build / Sprint
Screenshot bắt buộc
bug-checkout-submit-disabled-20240115.png — Đánh dấu vùng lỗi bằng mũi tên đỏ hoặc highlight. Đảm bảo hiển thị rõ URL, trạng thái form và thông báo lỗi.
Video recording (khuyến khích)
bug-checkout-submit-video.mp4 — Quay lại toàn bộ luồng thao tác từ bước 1. Dùng Loom, OBS hoặc screen recorder có sẵn. Độ dài tối đa 2 phút.
Console log / Network log
console-log-20240115.txt — Mở DevTools (F12) → Console tab → Copy toàn bộ error. Nếu có API call lỗi → chụp thêm Network tab, response body.
Mẹo Nhanh Cho Fresher
Nên làm
- Tái hiện lỗi ít nhất 3 lần trước khi log
- Mỗi ticket = 1 lỗi duy nhất
- Viết Steps đủ để người lạ cũng reproduce được
- Link ticket với Test Case, Sprint, Component
- Update trạng thái ticket kịp thời (In Progress → Verify → Closed)
Không nên làm
- Title mơ hồ: "Bị lỗi", "Không chạy được"
- Log nhiều lỗi khác nhau vào 1 ticket
- Không đính kèm screenshot/evidence
- Bỏ qua việc kiểm tra duplicate trước
- Assign sai người, gán priority tùy tiện không thống nhất với team