Bạn đã từng bị miss bugs, thậm chí là những bugs cơ bản bao giờ chưa? Đôi khi bạn tự hỏi tại sao mình lại bỏ sót những bugs này?
Trong cuộc đời đi làm của một Tester, tôi chắc hẳn test qua test rằng bạn đã từng gặp những trường hợp:
Do áp lực công việc: Đảm bảo chất lượng phần mềm, đã tạo ra ý khiến rằng: Mọi khiếm khuyết sau giai đoạn kiểm thử đều do sai lầm của Tester và bạn phải chịu trách nghiệm với nó. Chính vì thế, bỏ sót lỗi (lack bugs) là một điều khá là tồi tệ với một kiểm thử viên. Không thể phủ nhận rằng việc bỏ sót lỗi này có cả những nguyên nhân chủ quan, do nhận thức sai lầm hoặc cẩu thả của chính người kiểm thử viên. Tuy nhiên cũng có rất nhiều nguyên khách quan đã đến bugs bị bỏ sót. Bài viết này sẽ giúp bạn làm rõ các lý do khiến chúng ta bỏ sót bugs và cách ngăn chặn để giảm thiểu tối đa bugs đó không xảy nữa.
Khi con người tiếp cận bất kỳ một vấn đề luôn hướng tới những điều logic, có cấu trúc hợp lí. Nhưng thực tế thật đáng buồn là chúng ta luôn bị ảnh hưởng bởi những nhận thức sai lầm từ cấu trúc bộ não hay những sự việc mà chúng ta trải qua hàng ngày. Những nhận thức sai lầm có thể dẫn đến các biến thể của tri giác và hành động. Với nghề Tester, họ sẽ bị ảnh hưởng bởi những thành kiến riêng của họ - Phán đoán nơi có những bugs ẩn, người phát triển nó, toàn bộ lịch sử của hệ thống, v.v.
Con người dễ dàng thường đánh giá một tình huống dựa vào một tình huống tương tự. Trường hợp này thường xảy ra khi bạn test một testcase thành công và thường mặc định rằng những testcases có cùng scenarios tương tự đều sẽ pass. Chúng ta có xu hướng bỏ qua những bugs tiềm tàng.
Bạn có thể làm gì để ngăn chặn?
Đây là xu hướng tìm kiếm và diễn giải thông tin dựa trên niềm tin và các giả thuyết của chúng ta. Ví dụ, bạn cho rằng code của một Developer thường gặp nhiều bugs hơn một Developer khác. Điều này sẽ khiến bạn mất rất nhiều thời gian để test những modules mà anh ấy phát triển vì thế sẽ dẫn đến việc thiếu thời gian để test những modules của người khác.
Bạn có thể làm gì để ngăn chặn?
Đôi khi bugs bị bỏ sót là những bugs rõ ràng, hiển nhiên và ở ngay trước mặt nhưng chúng ta không nhận ra. Nguyên nhân của việc này chính là:
Bạn có thể làm gì để ngăn chặn?
Có đôi khi bạn thực hiện test cho một module nhưng lại phát hiện ra bug của một modules khác. Bạn nghĩ rằng sẽ báo cáo nó sau nhưng sau (later) lại trở thành không bao giờ (never). Bạn chuyển qua một công việc khác và hoàn toàn quên mất sự tồn tại của bug đó. Trong vài trường hợp khác, bạn không chắc chắn về bug tìm được - có thể là bug sometime hoặc requirement mơ hồ. Bạn không muốn làm phiền Developer hoặc BA. Đôi khi, bạn đánh giá bugs đó có độ nghiêm trọng thấp. Những có thể độ nghiêm trọng của bugs thấp với bạn (phần này) nhưng lại cao với người khác (phần khác)
Bạn có thể làm gì để ngăn chặn?
Đây là trường hợp phổ biến nhất dẫn đến lọt bugs.
Bạn có thể làm gì để ngăn chặn?
Nhiều khách hàng muốn ra mắt sản phẩm phần mềm tới thị trường càng sớm càng tốt. Mặt trái của việc này là đội kiểm thử bị áp lực về thời gian khi phải hoàn thành kiểm thử cho kịp deadline. Điều đó đồng nghĩa với việc họ phải làm thêm giờ hoặc chấp nhận bỏ qua một số trường hợp kiểm thử trong đợt release này. Khi đội kiểm thử đang "chạy" để kịp release, họ bỏ qua một số trường hợp, và bug lại tiềm ẩn trong các trường hợp mà họ đã bỏ qua.
Bạn có thể làm gì để ngăn chặn?
Hy vọng bạn sẽ có một ý tưởng tốt hơn về nhận thức sai lầm trong software testing hay những vấn đề tưởng chừng rất quen thuộc nhưng lại là nguyên nhân khiến chúng ta bỏ lỡ bugs. Quan trọng hơn là những gì có thể được thực hiện để loại bỏ những ảnh hưởng đó?
Ở đây, có điểm quan trọng cần lưu ý: Bỏ qua bug là không tốt, có thể gây nhiều hậu quả nghiêm trọng. Nếu có xảy ra, hãy cùng xem xét quá trình kiểm thử, rút ra bài học để ngăn chặn việc đó xảy ra lần nữa.
Nguồn: Viblo