9. Cách ghi nhận Bugs hiệu quả
Trong Software Testing, việc ghi lại (log) các lỗi (bugs) là một bước quan trọng để đảm bảo chất lượng phần mềm. Phương pháp log bugs hiệu quả giúp nhóm phát triển hiểu rõ vấn đề, tái hiện lỗi và sửa chữa một cách nhanh chóng. Dưới đây là hướng dẫn chi tiết về phương pháp log bugs:
Quy trình cơ bản để log bugs
- Phát hiện lỗi: Tester thực hiện kiểm thử và nhận ra một hành vi không mong muốn trong phần mềm.
- Xác minh lỗi: Đảm bảo lỗi thực sự tồn tại và không phải do sai sót trong quá trình kiểm thử (ví dụ: dữ liệu đầu vào sai).
- Ghi lại lỗi: Sử dụng công cụ quản lý lỗi (bug tracking tool) để log thông tin chi tiết.
- Theo dõi và cập nhật: Theo dõi trạng thái của lỗi trong suốt vòng đời sửa chữa.
Các thành phần cần có khi log bugs
Để log bugs một cách chuyên nghiệp, bạn cần cung cấp đầy đủ các thông tin sau:
-
Tiêu đề (Bug Title):
- Một mô tả ngắn gọn, rõ ràng về lỗi.
- Ví dụ: "Nút Đăng nhập không hoạt động khi nhập ký tự đặc biệt".
-
ID lỗi (Bug ID):
- Mã định danh duy nhất (thường do công cụ tự sinh ra).
-
Mô tả lỗi (Description):
- Mô tả chi tiết về lỗi: điều gì xảy ra, lỗi xuất hiện ở đâu, ảnh hưởng thế nào.
- Ví dụ: "Khi nhập ký tự '@' vào trường mật khẩu, nút Đăng nhập bị vô hiệu hóa."
-
Môi trường (Environment):
- Thông tin về hệ điều hành, trình duyệt, phiên bản phần mềm, thiết bị, v.v.
- Ví dụ: "Windows 11, Chrome 120.0, phiên bản app 1.2.3".
-
Các bước tái hiện (Steps to Reproduce):
- Danh sách các bước cụ thể để tái hiện lỗi.
- Ví dụ:
- Mở ứng dụng.
- Vào màn hình đăng nhập.
- Nhập "user@123" vào trường mật khẩu.
- Nhấn nút Đăng nhập.
- Kết quả mong đợi (Expected Result): "Đăng nhập thành công."
- Kết quả thực tế (Actual Result): "Nút Đăng nhập bị vô hiệu hóa."
-
Độ nghiêm trọng (Severity):
- Mức độ ảnh hưởng của lỗi tới hệ thống.
- Ví dụ:
- Critical: Lỗi làm sập hệ thống.
- Major: Lỗi ảnh hưởng chức năng chính.
- Minor: Lỗi nhỏ, không ảnh hưởng lớn.
- Trivial: Lỗi giao diện nhỏ.
-
Độ ưu tiên (Priority):
- Mức độ cần sửa lỗi ngay lập tức.
- Ví dụ: High, Medium, Low.
-
Tệp đính kèm (Attachments):
- Ảnh chụp màn hình, video, log file, hoặc bất kỳ tài liệu nào hỗ trợ việc tái hiện lỗi.
-
Người phát hiện (Reported By):
- Tên tester phát hiện lỗi.
-
Ngày phát hiện (Date Reported):
- Thời điểm lỗi được báo cáo.
-
Trạng thái (Status):
- Ví dụ: New, Open, In Progress, Resolved, Closed.
Công cụ phổ biến để log bugs
- JIRA: Quản lý lỗi và theo dõi dự án.
- Bugzilla: Công cụ mã nguồn mở để theo dõi lỗi.
- Trello: Dùng cho dự án nhỏ với cách quản lý đơn giản.
- TestRail: Tích hợp quản lý test case và bug.
- Excel/Google Sheets: Dùng thủ công cho dự án nhỏ.
Mẹo để log bugs hiệu quả
- Rõ ràng và ngắn gọn: Tránh dùng từ ngữ mơ hồ, cung cấp đủ thông tin nhưng không dài dòng.
- Tái hiện được: Đảm bảo lỗi có thể được tái hiện dựa trên các bước bạn cung cấp.
- Trung lập: Không đổ lỗi cho developer, chỉ tập trung mô tả vấn đề.
- Kiểm tra trùng lặp: Trước khi log, xem lỗi đã được báo cáo chưa để tránh lặp lại.
- Cập nhật thường xuyên: Theo dõi và cập nhật trạng thái khi lỗi được sửa hoặc cần bổ sung thông tin.
Ví dụ log bug
- Tiêu đề: "Ứng dụng crash khi nhấn nút Lưu trên form đăng ký."
- Mô tả: "Khi điền đầy đủ thông tin và nhấn nút Lưu, ứng dụng bị crash."
- Môi trường: "Android 14, Samsung Galaxy S23, app v2.1."
- Các bước tái hiện:
- Mở ứng dụng.
- Vào form đăng ký.
- Điền thông tin (Tên: Test, Email: test@gmail.com).
- Nhấn nút Lưu.
- Kết quả mong đợi: Form được lưu và chuyển sang màn hình chính.
- Kết quả thực tế: Ứng dụng crash, thoát ra ngoài.
- Độ nghiêm trọng: Critical.
- Độ ưu tiên: High.
- Đính kèm: Video quay màn hình + log crash.