Anh/chị hãy trình bày về hiệu ứng thuốc trừ sâu là gì trong kiểm thử (pesticide paradox) ?
1. Testing shows presence of defects, not their absence Show
Kiểm thử chỉ ra sự hiện diện của lỗi chứ không phải sự vắng mặt của chúng. Kiểm thử giúp giảm xác xuất của lỗi chưa được tìm thấy trong phần mềm. Tuy vậy kiểm thử không phải là bằng chứng cho một sản phẩm không còn lỗi. 2. Exhaustive testing is impossible Kiểm thử vét cạn là không thể. Thông thường không thể kiểm tra hết tất cả yếu tố đầu vào, đầu ra và điều kiện tiên quyết. Thay vào đó, người kiểm thử nên ưu tiên dựa trên mức độ rủi ro đối với sản phẩm. 3. Early testing saves time and money Kiểm thử càng sớm càng tốt. Người kiểm thử không phải đợi đến khi sản phẩm release mới tiến hành kiểm thử. Lỗi được phát hiện sớm trong vòng đời phát triển sản phẩm sẽ dễ sửa và tiết kiệm được tiền bạc. 4. Defect cluster together Cụm lỗi. Điều này có nghĩa là lỗi thường hay xuất hiện tập trung. Hầu hết các lỗi trong phần mềm đều theo nguyên tắc Pareto: có nghĩa là 80% lỗi thường xuất phát từ 20% mô-đun (model). Mặc dù sẽ có những ngoại lệ, nhưng đây là một quy tắc hữu ích để kiểm tra sự tập trung của lỗi. 5. Beware the Pesticide Paradox Cẩn thận nghịch lý thuốc trừ sâu. Điều này vay mượn từ ý tưởng trong nông nghiệp rằng sử dụng lặp đi lặp lại cùng một loại thuốc trừ sâu sẽ dẫn đến giảm hiệu quả của thuốc. Trong thế giới phần mềm, điều này có nghĩa là các trường hợp kiểm thử thông thường cuối cùng sẽ ngừng tìm ra các lỗi mới. Do đó cần phải xem xét và sửa đổi các trường hợp kiểm thử thường xuyên. 6. Testing is context dependent Kiểm thử phụ thuộc vào ngữ cảnh. Mô hình kiểm thử lặp đi lặp lại sẽ không còn đúng với tất cả các trường hợp. Ví dụ, kiểm thử cho trang thương mại điện tử với lượng truy cập cao sẽ khác với ứng dụng dành cho nhân viên nội bộ của công ty. 7. Absence of errors fallacy Không có lỗi là một sai lầm. Việc không tìm thấy lỗi trên sản phẩm không đồng nghĩa với việc sản phẩm không có lỗi và sẵn sàng để tung ra thị trường. Việc không tìm thấy lỗi có thể do việc kiểm thử nhằm vào kiểm tra tính năng theo yêu cầu thay vì tìm kiếm lỗi mới. Happy Testing! Là nơi ôn thi ISTQB Foundation Level 1.3 Seven Testing Principles1.Testing shows the presence of defects, not their absenceTesting có thể chỉ ra defects có hiện diện, nhưng không thể chứng mình rằng không có defects tồn tại. Testing giảm khả năng xuất hiện lỗi trong phần mềm nhưng dù cho không có tìm ra defects nào thì cũng không có nghĩa là phần mềm đã hoạt động hoàn toàn đúng đắn. 2. Exhaustive testing is impossibleTest tất cả các trường hợp với tất cả kết hợp của các bộ dữ liệu đầu vào(test vét cạn) là không khả thi trong đa số trường hợp. Thay vì cố vét cạn, nên tập trung hơn vào risk analysis, test techniques và test priorities 3. Early testing saves time and moneyĐể tìm được defect sớm, cả static testing và dynamic testing nên được bắt đầu sớm nhất có thể trong chu trình phát triển phần mềm. Early tesing thỉnh thoảng còn được gọi là shift left. Việc test sớm sẽ giảm hoặc loại bỏ các thay đổi tốn kém. 4. Defects cluster togetherThông thường, một số ít tính năng lại mang phần lớn trên tổng các defects, gây nên nhiều lỗi khi vận hành. Dự đoán nhóm các defects này và chú ý vào nó khi test cũng như vận hành là một việc quan trọng cần làm khi thực hiện risk analysis. 5. Beware of the pesticide paradox(nghịch lý thuốc trừ sâu)Một bộ test được dùng đi dùng lại nhiều lần sẽ không thề tìm ra các defects mới nữa. Để tìm ra các defects mới, các test cases và test data cần phải được thay đổi và test cases mới cần phải được viết( cũng giống như là thuốc trừ sâu sẽ không thể diệt được côn trùng bị lờn thuốc sau một thời gian sử dụng vậy). Trong các trường hợp, như là kiểm thử tự động, nghịch lý thuốc trừ sâu lại có lợi ích, bằng việc chỉ ra các bug regression ít đi. 6. Testing is context dependentTesting là khác nhau trong các ngữ cảnh khác nhau. Ví dụ như một sản phầm đặt vấn đề an toàn lên hàng đầu sẽ được test khác với một sản phầm thương mại điện tử. Trong một ví dụ khác, testing trong một project Agile cũng sẽ khác với việc test một project theo mô hình Waterfall(thác nước). 7. Absence-of-errors is a fallacyMột vài tổ chức mong đợi rằng tester sẽ test tất cả các tình huống xảy ra và tìm được tất cả các defects, nhưng trong principle 1 và 2 lần lượt cho ta biết điều đó là không thể. Xa hơn, điều đó là một điều ngụy biện(một niềm tin sai lầm) khi trông đợi rằng chỉ cần tìm thấy và sửa tất cả các defects sẽ đảm bảo cho một hệ thống thành công. Ví dụ, một phần mềm ta đã test một cách thấu đáo và tất cả defects cũng đã được sửa vẫn có thể đó là một phần mềm khó sử dụng(không thân thiện, UX không tốt) hoặc cũng có thể nó không đáp ứng được nhu cầu cũng như kì vọng từ phía người dùng và tính năng không tốt bằng các phần mềm đối thủ. Duới đây là các thông tin và kiến thức về chủ đề ad hoc testing là gì hay nhất do chính tay đội ngũ taichinhkinhdoanh.info biên soạn và tổng hợp cùng với các chủ đề liên quan khác như: Ad hoc la gì, Exploratory testing La gì, Ad-hoc testing và Exploratory testing, monkey testing là gì ?, Ad hoc analysis là gì, Smoke Testing la gì, Exploratory testing, anh/chị hãy trình bày về hiệu ứng thuốc trừ sâu là gì trong kiểm thử (pesticide paradox) ?. Hình ảnh cho từ khóa: ad hoc testing là gì Các bài viết hay phổ biến nhất về ad hoc testing là gì 1. Exploratory testing và Ad-hoc testing – Sen Tây Hồ
2. Adhoc testing là gì? – Agile Experts
3. Exploratory testing và Ad-hoc testing – Ingoa.info
4. Exploratory testing và Ad-hoc testing – Tchiase
5. [Có thể bạn chưa biết AD HOC là gì … – Timviec365.com.vn
6. Bài 4. Kiểm thử ứng dụng di động – Tự Học Tin
7. Ad hoc là gì? Tìm hiểu mạng không dây Ad hoc và phương …
8. Ad-Hoc Là Gì – Những Ý Nghĩa Của Ad Hoc – Timnhaviet.vn
9. Ad hoc nghĩa là gì – TTMN
10. Ý Nghĩa Của Ad Hoc Là Gì ? Đây Là Một Thuật Ngữ Kinh Tế …
11. Adhoc Là Gì – Top 5 Từ Mượn Trong Tiếng Anh Phổ Biến
Các video hướng dẫn về ad hoc testing là gì |