Testowanie goryla próbują naśladować działania naiwnego użytkownika, który losowo bada system bez uprzedniej wiedzy. Testerzy otrzymują niewiele informacji na temat oprogramowania i proszone są o kliknięcie interfejsu w sposób przypadkowy. Takie podejście kwestionuje funkcjonalność, użyteczność i solidność oprogramowania, poddając je niekonwencjonalnym interakcjom użytkownika.
Oto kluczowe cechy i cele testowania goryla:
1. Nieprzewidywalność:Działania testera podczas testowania goryla są nieprzewidywalne i nie systematyczne. W przeciwieństwie do systematycznych przypadków testowych, etapy testu w testach goryla nie są z góry planowane.
2. Odkrycie błędu:Testowanie goryla koncentruje się na znalezieniu nieoczekiwanych błędów i problemów, które mogą nie zostać odkryte za pomocą tradycyjnych metod testowania. Naśladując zachowanie naiwnego użytkownika, testy goryla mogą ujawnić problemy, z którymi prawdziwi użytkownicy mogą napotkać w faktycznych scenariuszach użytkowania.
3. Testowanie użyteczności:jest używane nie tylko do testowania funkcjonalności, ale także do testowania użyteczności. Przedstawiając oprogramowanie z perspektywy użytkownika, testowanie goryla podkreśla obszary, w których interfejs może być mylący lub trudny do zrozumienia dla zwykłych użytkowników.
4. Wiedza o ograniczonych testerach:Testerzy przeprowadzający testowanie goryla mają ograniczoną wcześniejszą wiedzę na temat systemu. Pozwala to na bardziej obiektywną ocenę oprogramowania z punktu widzenia nowego użytkownika.
Testy goryla są wykorzystywane przede wszystkim do badań eksploracyjnych, zwłaszcza gdy zespół testujący nie jest zaznajomiony z badanym systemem. Można go również zastosować podczas testów dymu i testów funkcjonalnych, aby uzupełnić bardziej ustrukturyzowane podejścia do testowania.
Pomimo pozornie niesystematycznego charakteru, testowanie goryla często mogą odkryć prawdziwe problemy i wady użyteczności. Oferuje inną perspektywę funkcjonalności oprogramowania i zapewnia, że aplikacja jest intuicyjna i przyjazna dla użytkownika. Nie powinien jednak całkowicie zastępować bardziej systematycznych podejść testowych, ponieważ może nie zapewniać kompleksowego zasięgu różnych funkcji i funkcji aplikacji.