Monkey testing là gì?
Monkey testing là một kỹ thuật kiểm thử phần mềm trong đó người kiểm thử nhập bất kỳ đầu vào ngẫu nhiên nào vào ứng dụng phần mềm mà không cần các trường hợp kiểm thử được xác định trước và kiểm tra hoạt động của ứng dụng phần mềm, xem nó có gặp sự cố hay không. Mục đích của Monkey testing là tìm ra các lỗi trong ứng dụng phần mềm bằng các kỹ thuật thử nghiệm.
- Trong Monkey testing, người thử nghiệm (đôi khi cũng là nhà phát triển) được coi là ‘Khỉ’.
- Nếu một con khỉ sử dụng máy tính, nó sẽ thực hiện ngẫu nhiên bất kỳ tác vụ nào trên hệ thống ngoài tầm hiểu biết của nó.
- Giống như người kiểm thử sẽ áp dụng các ca kiểm thử ngẫu nhiên trên hệ thống được kiểm thử để tìm lỗi/lỗi mà không cần xác định trước bất kỳ ca kiểm thử nào.
- Trong một số trường hợp, Monkey testing cũng được dành riêng cho Kiểm tra đơn vị hoặc Kiểm tra GUI
Gorilla testing là gì?
Gorilla testing là một kỹ thuật kiểm thử phần mềm trong đó mô-đun của chương trình được kiểm tra nhiều lần để đảm bảo rằng nó hoạt động chính xác và không có lỗi trong mô-đun đó.
Một mô-đun có thể được kiểm tra hơn một trăm lần và theo cách tương tự. Vì vậy, Gorilla testing còn được gọi là “Thử nghiệm khó chịu”.
Ưu điểm của Monkey testing:
- Loại lỗi mới: Người kiểm tra có thể tiếp xúc hoàn toàn với việc triển khai các thử nghiệm theo hiểu biết của mình ngoài các tình huống đã nêu trước đó, điều này có thể không cho kết quả. Các lỗi/lỗi mới hiện có trong hệ thống.
- Dễ thực hiện: Sắp xếp các thử nghiệm ngẫu nhiên dựa trên dữ liệu ngẫu nhiên là cách dễ dàng để kiểm tra hệ thống.
- Những người có kỹ năng kém hơn: Monkey testing có thể được thực hiện mà không cần người kiểm tra có kỹ năng (nhưng không phải lúc nào cũng vậy).
- Ít tốn kém hơn: Yêu cầu số tiền chi tiêu ít hơn đáng kể để thiết lập và thực hiện các trường hợp thử nghiệm.
Nhược điểm của Monkey testing:
- Không có lỗi nào có thể được tái tạo: Vì người kiểm tra thực hiện các thử nghiệm ngẫu nhiên với dữ liệu ngẫu nhiên tái tạo nên mọi lỗi hoặc lỗi có thể không xảy ra.
- Độ chính xác kém hơn: Người kiểm tra không thể xác định kịch bản kiểm thử chính xác và thậm chí không thể đảm bảo tính chính xác của các trường hợp kiểm thử.
- Yêu cầu chuyên môn kỹ thuật rất tốt: Không đáng để luôn thỏa hiệp với độ chính xác, vì vậy để làm cho các ca kiểm thử chính xác hơn, người kiểm thử phải có kiến thức kỹ thuật tốt về domain
- Ít lỗi hơn và tốn thời gian hơn: Việc kiểm tra này có thể kéo dài hơn vì không có kiểm tra nào được xác định trước và có thể tìm thấy ít lỗi hơn có thể gây ra sơ hở trong hệ thống.
Người ta có thể coi rằng Monkey testing, Gorilla testing và Ad-hoc testing đều giống nhau vì có một số sự thật tương tự nhau trong tất cả chúng nhưng thực tế là chúng khác nhau thế nào?
Đầu tiên chúng ta sẽ thấy sự khác biệt giữa Monkey testing và Gorilla testing
Monkey testing vs Gorilla testing
Monkey testing | Gorilla testing |
---|---|
Monkey testing được thực hiện ngẫu nhiên không có trường hợp thử nghiệm cụ thể nào được xác định trước | Nó không được xác định trước cũng như không ngẫu nhiên |
Monkey testing được thực hiện trên toàn bộ hệ thống, có thể có một số trường hợp thử nghiệm | Gorilla testing được thực hiện trên một số mô-đun chọn lọc cụ thể với một số trường hợp thử nghiệm |
Mục tiêu của Monkey testing là kiểm tra sự cố hệ thống | Mục tiêu của Gorilla testing là kiểm tra xem mô-đun có hoạt động tốt hay không |
Sau khi giải quyết được sự khác biệt này, hãy hướng tới điều tiếp theo.