Kiểm thử phần mềm là một miền rất lớn, nhưng nó có thể được phân loại thành hai miền: kiểm thử thủ công và kiểm thử tự động.
Cả hai thử nghiệm thủ công và tự động đều có những mặt lợi và bất lợi. Đó là giá trị để biết sự khác biệt, khi sử dụng một trong hai cho kết quả tốt nhất.
Trong kiểm thử thủ công, trường hợp thử nghiệm được thực hiện bằng thủ công (bởi một con người) mà không cần bất kỳ sự hỗ trợ từ các công cụ hoặc các kịch bản. Nhưng với kiểm thử tự động, trường hợp thử nghiệm được thực hiện với sự hỗ trợ của các công cụ, kịch bản, và phần mềm.
Thử nghiệm là một phần không thể thiếu của bất kỳ dự án phần mềm thành công. Các loại thử nghiệm (bằng thủ công hoặc tự động) phụ thuộc vào các yếu tố khác nhau, bao gồm cả các yêu cầu của dự án, ngân sách, thời gian, chuyên môn, và phù hợp. Ba yếu tố quan trọng của bất kỳ dự án là thời gian, chi phí và chất lượng - mục tiêu của bất kỳ dự án thành công là để giảm chi phí và thời gian cần thiết để hoàn thành nó thành công khi duy trì chất lượng đầu ra. Khi nói đến thử nghiệm, một loại có thể đạt được mục tiêu này tốt hơn khác.
Kiểm thử thủ công và kiểm thử tự động bao gồm hai khu vực rộng lớn.
Trong mỗi loại, các phương pháp thử nghiệm cụ thể có sẵn, chẳng hạn như kiểm thử hộp đen, kiểm thử hộp màu trắng, tích hợp kiểm thử, thử nghiệm hệ thống, kiểm thử hiệu suất, và thử tải . Một số trong những phương pháp phù hợp hơn để kiểm thử thủ công, và một số được thực hiện tốt nhất thông qua tự động hóa. Dưới đây là một so sánh ngắn gọn của từng loại, cùng với một số ưu và khuyết điểm:
Kiểm thử thủ công |
Kiểm thử tự động |
---|---|
Được thực hiện bởi con người, không chính xác tại mọi thời điểm do đó nó ít tin cậy |
Được thực hiện bởi các công cụ hoặc các kịch bản. Đáng tin cậy hơn |
Tốn nhiều thời gian khi Regression Test |
Được thực hiện bởi các công cụ phần mềm, vì vậy nó nhanh hơn |
Cần đầu tư nguồn nhân lực nhiều |
Đầu tư cho công cụ kiểm thử |
Chỉ phù hợp cho các trường hợp thử nghiệm ít lặp đi lặp lại trong thời gian dài |
Thích hợp cho các trường hợp thử nghiệm được chạy liên tục trong một thời gian dài |
Phù hợp khi cần có sự quan sát của con người hoặc trải nghiệm của khách hang |
Không đòi hỏi sự quan sát của con người Nhưng không thể đảm bảo thân thiện với người dùng trải nghiệm thực tế |
Tóm lại, kiểm thử thủ công là phù hợp nhất với các khu vực / kịch bản sau đây:
• Kiểm thử thăm dò: Sử dụng khi cần dùng kiến thức, kinh nghiệm, phân tích / logic kỹ năng, sáng tạo và trực giác. (explode testing). Kiểm thử này được dùng khi có ít tài liệu đặc tả, hoặc một thời gian ngắn để thực hiện.
• Usability Testing: Sử dụng khi cần để đo độ thân thiện, hiệu quả, thuận tiện của phần mềm hoặc sản phẩm cho người dùng cuối. Khi cần sự quan sát con người.
• Kiểm thử Ad-hoc: Dùng khi trong kịch bản đặc tả không có phương pháp cụ thể. Nó là một phương pháp hoàn toàn không có kế hoạch kiểm thử. Cần có sự hiểu biết và cái nhìn sâu sắc của con người là yếu tố quan trọng duy nhất.
Kiểm thử tự động là lựa chọn ưa thích trong các lĩnh vực / kịch bản sau đây:
• Kiểm thử hồi quy: Kiểm thử tự động rất hiệu quả khi áp dụng cho giai đoạn re-test và test hồi quy. Hoặc cần chạy một số lượng testcases trong một thời gian ngắn.
• Kiểm thử tải trọng: Khi muốn thực hiện kiểm thử hiệu năng hoặc load test thì kiểm thử tự động gần như là biện pháp duy nhất.
• Thực hiện lặp đi lặp lại: Khi chúng ta chạy test mỗi ngày cần phải add Data hoặc chạy sẵn các bước nền để test các khâu trọng tâm. Khi chạy full flow mà chỉ test một phần nhỏ trong đó thì các bước đã chạy qua rồi sẽ lặp đi lặp lại thì khi đó Automation sẽ thấy tác dụng rõ nhất.
• Thử nghiệm tính năng: Tương tự như vậy, thử nghiệm mà đòi hỏi sự mô phỏng của hàng ngàn người dùng đồng thời đòi hỏi tự động hóa. Kiểm tra sự kết hợp giữa nhiều giá trị đầu vào ở một bước nào đó. Kiểm tra nhiều màn hình của dữ liệu đầu vào.
Biết được những ưu và nhược điểm của mỗi loại kiểm thử thủ công hay kiểm thử tự động, bạn có thể tìm thấy những phương pháp tốt nhất trong bất kỳ tình huống thử nghiệm đưa ra và đạt được chất lượng đầu ra cho ngân sách và thời gian của bạn.
Anh Tester
Đường dẫu khó chân vẫn cần bước đi
Đời dẫu khổ tâm vẫn cần nghĩ thấu