Testy przypadków — to wcześniej przygotowane scenariusze z dokładnie opisanymi krokami, danymi wejściowymi i oczekiwanymi wynikami. Testowanie eksploracyjne odbywa się na miejscu: tester w trakcie poznawania produktu generuje kontrole, wykorzystując swoją ekspertyzę i intuicję. Historycznie na początku dominowały testy przypadków, ale w miarę skomplikowania systemów i wzrostu ilości ręcznego testowania testowanie eksploracyjne zaczęło uzupełniać formalne podejścia.
Ślepe podążanie tylko za jednym rodzajem testowania ogranicza pomysłowość testera i może pozostawić produkt z niezauważonymi błędami, które nie są opisane w przypadkach.
Używać obu podejść w zbalansowany sposób: testy przypadków — dla regresyjnego i krytycznego funkcjonalności, testowanie eksploracyjne — dla nowych, jeszcze nie do końca sformalizowanych obszarów i w sytuacjach z ograniczonym czasem.
Kluczowe cechy:
Czy można używać tylko testów przypadków do 100% pokrycia?
Nie. Nawet najdokładniejszy zestaw przypadków nie pokrywa nieprzewidzianego zachowania użytkownika ani nietypowych błędów.
Czy testowanie eksploracyjne wymaga wstępnego przygotowania?
Tak. Należy zrozumieć funkcjonalność, poznać wymagania, zrozumieć logikę biznesową przed swobodnym badaniem produktu.
Czy raport błędów jest obowiązkowy po testowaniu eksploracyjnym?
Tak. Każdy znaleziony defekt powinien być opisany tak samo dokładnie, jak błąd z formalnego scenariusza, w przeciwnym razie trudno go odtworzyć i naprawić.
Zespół pokrył wydanie tylko formalnymi testami przypadków. Jeden tester wykonał je ściśle według instrukcji, nie sprawdzając "sąsiednich" przypadków, przez co umknął błąd, który pojawił się przy określonej sekwencji działań, nieprzewidzianej wcześniej.
Zalety:
Wady:
Tester po przejściu kluczowych testów przypadków poświęcił godzinę na testowanie eksploracyjne, znalazł błąd, który występuje tylko przy zmianie czasu na urządzeniu w trakcie działania aplikacji.
Zalety:
Wady: