Mình vừa đọc một bài viết của BrowserStack về cách tìm bug trong phần mềm hiệu quả hơn.
Link bài viết: https://www.browserstack.com/guide/how-to-find-bugs-in-software
Một số điểm mình thấy đáng chú ý:
1. Không chỉ test Happy Path
Ngoài các test case đã có, chúng ta nên thử các tình huống bất thường/không hợp lệ:
- Để trống field bắt buộc
- Nhập sai format
- Nhập dữ liệu quá dài/quá lớn
- Nhập ký tự đặc biệt
- Click/submit nhiều lần
- Refresh hoặc back trong quá trình thực hiện
- Thực hiện các thao tác theo thứ tự không mong đợi
👉 Mục tiêu là thử “challenge” hệ thống thay vì chỉ kiểm tra xem flow có chạy đúng hay không.
2. Tập trung nhiều hơn vào những khu vực có risk cao
Không phải chức năng nào cũng cần cùng một mức độ testing.
Nên chú ý hơn đến:
- Chức năng có business impact cao
- Payment / invoice
- Registration / approval
- Data integrity
- Các chức năng được user sử dụng thường xuyên
- Những module trước đây có nhiều bug
3. Hiểu product và business flow
Tester càng hiểu rõ:
- Requirement
- Business rule
- User flow
- Expected behavior
thì càng dễ phát hiện những vấn đề mà test case có thể chưa cover.
4. Tìm pattern từ các bug
Nếu nhiều bug liên tục xuất hiện ở cùng một module/chức năng, thay vì chỉ fix từng bug riêng lẻ, chúng ta nên xem xét:
👉 Có vấn đề ở requirement không?
👉 Có thiếu validation không?
👉 Có thiếu test case không?
👉 Có thay đổi UI/API nhưng regression chưa đủ không?
Điều này có thể giúp chúng ta *prevent bug thay vì chỉ detect bug*.
5. Thử suy nghĩ như một người dùng
Khi test, ngoài việc follow test case, có thể tự hỏi:
“Nếu mình là user, mình có thể làm gì khác với flow mà developer dự kiến?”
Đây là một cách để tìm ra những unexpected scenarios.
💡 Key takeaway:
Testing không chỉ là execute test cases và check PASS/FAIL.
Một tester tốt cũng cần:
Explore → Challenge → Think like a user → Identify risk → Find patterns → Prevent future bugs
Hi vọng bài viết này sẽ có một số điểm hữu ích cho công việc test hằng ngày của team. Thanks.
