Mỗi ngày, chúng ta thấy hàng nghìn sản phẩm và ứng dụng mới trên thị trường. Rất nhiều thủ tục kiểm tra phải thực hiện trước khi phát hành nó ra công chúng. Kiểm thử tự động có thể tăng tốc các quy trình kiểm thử và có thể được xem như một sự thay thế cho kiểm thử thủ công. Tuy nhiên, kiểm tra thủ công vẫn đóng một vai trò quan trọng trong quy trình Đảm bảo chất lượng. Bằng cách chỉ sử dụng kiểm thử tự động, người kiểm thử sẽ mất nhiều cơ hội để cải thiện chất lượng hệ thống. Thực hiện kiểm tra thủ công với kiểm tra tự động sẽ dẫn đến chất lượng và độ ổn định của sản phẩm cao hơn nhiều. Những lý do chính đằng sau điều này là:
Không thể đạt được 100% mục tiêu với thử nghiệm tự động:
Không thể đạt được 100% mục tiêu bằng cách sử dụng kiểm tra tự động vì một số kiểm tra không thể được tự động hóa một cách đơn giản như kiểm tra nền của cửa sổ hoặc hộp thoại. Tập lệnh tự động hóa sẽ có phạm vi giới hạn dựa trên những gì đang được thử nghiệm hoặc được viết trong đó không phù hợp với mắt người. Mắt người có thể xác định các vấn đề tiềm ẩn trong vài giây. Những thứ như kiểm tra khám phá, giao diện, kiểm tra liên quan đến người dùng, chẳng hạn nếu người dùng muốn xem liệu họ có thể thực hiện một tác vụ dễ dàng hay không, v.v. nên được thực hiện theo cách thủ công.
Kiểm tra tự động không thể giải quyết tất cả các vấn đề:
Trong một số trường hợp, kiểm thử tự động không thể giải quyết tất cả các vấn đề, nhưng tạo ra những vấn đề mới. Thời gian trọn gói của kiểm thử tự động trở nên lỗi thời khi các thay đổi khác được thực hiện với ứng dụng và bảo trì kiểm tra bị bỏ qua. Trọng tâm chính của các tổ chức là duy trì các trường hợp thử nghiệm hiện có và tạo ra các trường hợp thử nghiệm mới. Kiểm tra nợ thường không phải là ưu tiên cao nhất của họ.
Một số khu vực thử nghiệm cần được điều tra. Một số thử nghiệm là "false negatives" có nghĩa là đã hết thời gian thử nghiệm do một số lý do kỹ thuật trong môi trường. Quá trình này sẽ tốn thời gian cao hơn là tiết kiệm nó. Khía cạnh thách thức nhất của bất kỳ hệ thống tự động nào là hiểu được giới hạn của hệ thống tự động và đặt ra các kỳ vọng thực tế để tránh bất kỳ sự thất vọng nào.
Các loại kiểm tra cần được thực hiện thủ công:
1. Xác thực chủ quan (Subjective Validation):
Xác thực chủ đề bảo vệ tính hợp lệ của các từ, tuyên bố hoặc tên viết tắt. Điều này cũng bao gồm việc kiểm tra và kiểm tra nhận thức. Đây là giai đoạn mà con người có thể nhanh chóng phát hiện và cung cấp phản hồi hơn là hệ thống tự động yêu cầu nhiều bước để viết. Vì vậy, loại thử nghiệm này được đánh giá cao bằng tay.
2. Chức năng mới (New Functionalities):
Thực hiện kiểm thử tự động cho các ứng dụng đang được phát triển không phải là một kỹ thuật tốt. Sẽ tốn rất nhiều thời gian và nguồn lực để giữ cho các thử nghiệm tự động hóa được cập nhật và duy trì. Kiểm thử tự động sẽ thường xuyên bị lỗi và cần cập nhật thường xuyên do các ứng dụng thay đổi theo yêu cầu mới.
3. Phát triển chiến lược (Strategic Development):
Các ứng dụng nhất định yêu cầu sự chú ý cụ thể và chuyên môn về chủ đề. Kiểm thử thủ công phù hợp với các loại kiểm thử này hơn là kiểm thử tự động.
Ví dụ, nếu có những chức năng kinh doanh cần được quan tâm đặc biệt, người kiểm tra nên tập trung vào những lĩnh vực đó với sự tập trung và chú ý hơn. Các trường hợp kiểm thử chi tiết cần tuân theo bao gồm mọi khía cạnh. Điều này thường bao gồm phần quan trọng nhất của ứng dụng.
4. Trải nghiệm người dùng (User Experience): Về cơ bản, sự thành công hay sơ suất của một ứng dụng phụ thuộc vào tính hữu dụng của nó. Khi có vấn đề về trải nghiệm người dùng thì không gì có thể cạnh tranh được với mắt người. Nó có thể phát hiện bất kỳ vấn đề nào trong vài giây bằng cách xem xét một bức tranh như ngôn ngữ, độ phân giải, độ bền và định dạng, v.v. Trong khi kiểm tra tự động sẽ đòi hỏi một lượng lớn thời gian. Vì vậy, chúng tôi đề xuất để thuộc tính trải nghiệm người dùng của bất kỳ hệ thống nào đối với mắt người thay vì một hệ thống tự động.
5. Chức năng phức tạp (Complex Functionality):
Một số mô-đun có chức năng phức tạp mà hệ thống tự động không thể hoạt động hiệu quả. Vì vậy, tốt hơn nên tự động hóa các thao tác đó theo cách thủ công như trường hợp Kiểm tra thiết bị di động. Kiểm tra thiết bị di động yêu cầu kiểm tra bằng cách thoát và kết nối lại Wi-Fi, Chạy ứng dụng đồng thời, ủy quyền thiết bị, nhận và thực hiện cuộc gọi.
6. Kiểm soát chất lượng (Quality Control):
Nếu chất lượng tổng thể của ứng dụng đã hoàn thiện cần được kiểm tra, thì nó sẽ được ưu tiên theo cách thủ công hơn là tự động. Kiểm thử tự động chỉ có thể kiểm tra đầu ra cụ thể được tạo ra trong trường hợp thử nghiệm trong khi con người có thể điều hướng toàn bộ hệ thống và một số loại quy trình làm việc, con đường vui và buồn, thành công và thất bại của một số tiêu chí một cách nhanh chóng.
Các hệ thống tự động không thể tạo ra suy nghĩ ban đầu. Chúng sẽ chỉ thực hiện một số tác vụ cụ thể đã được lập trình sẵn. Họ cũng không thể tạo phản hồi hiệu quả mà người dùng có thể cung cấp. Vì vậy, bạn nên thực hiện Kiểm soát chất lượng theo cách thủ công.
7. Những chức năng mang lợi ích đầu tư thấp (Low return on investment):
Mục đích chính của các bài kiểm tra hệ thống là tiết kiệm thời gian và tiền bạc. Nếu các trường hợp thử nghiệm không thể cung cấp hai điều này thì sẽ vô ích. Một số ứng dụng đơn giản và chứa ít mô-đun hơn. Việc kiểm tra các ứng dụng này theo cách thủ công có thể được thực hiện bằng cách dành ít tài nguyên hơn cho các quy trình kiểm tra.
Ví dụ: bạn đang thử nghiệm một biểu mẫu đơn giản với nội dung nhỏ và doanh nghiệp không quan tâm xem nó có ở đó hay không. Một ví dụ khác có thể là một phần ứng dụng có ở đó nhưng không ai sử dụng nó.
8. Kiểm tra cài đặt và thiết lập (Installation and setup testing):
Trong quá trình kiểm tra cài đặt và thiết lập, hệ thống cần kiểm tra với các phần cứng và phần mềm khác nhau như tải CD-ROM, đĩa nhớ và Băng. Các loại hệ thống như vậy cũng yêu cầu thử nghiệm thủ công.
Phần kết luận:
Ngày nay, kiểm thử là phần quan trọng nhất của phát triển phần mềm. Không có phần mềm nào có thể giữ nguyên được. Các trang web thử nghiệm được chứng nhận và các nhóm Đảm bảo chất lượng là một cửa ngõ dẫn đến sự ổn định cho sản phẩm của bạn. Có rất nhiều lợi ích khi thực hiện kiểm tra thủ công hoặc kiểm tra tự động. Vì vậy, điều quan trọng là phải xem xét cả hai cách tiếp cận trong khi thiết kế chiến lược QA của bạn. Không quan trọng việc thử nghiệm tự động được phát triển đến mức nào. Sẽ luôn có một nơi kiểm tra thủ công trong các ứng dụng phần mềm.
DỊch thuật từ: https://www.softwaretestingmaterial.com/test-cases-not-to-be-automated/