Testowanie eksploracyjne to informacja

Testowanie eksploracyjne to informacja
Cem Kaner i James Bach w swoim opracowaniu The Nature of Exporatory Testing z 2004 roku piszą, że testowanie eksploracyjne pomaga pozyskać nowe informacje w pewnym kontekście projektowym. Informacja jest kluczem do rozumienia testowania eksploracyjnego.
 

Testowanie eksploracyjne ma wielu krytyków wśród "ekspertów" i wielu zwolenników wśród testerów. Jest bardzo rozpowszechnioną techniką testowania i bardzo często stosowaną w codziennej pracy, choć nie zawsze optymalnie wykorzystuje się jej potencjał. W testowaniu eksploracyjnym nie chodzi jedynie o ślepe klikanie, ale użycie wszystkich swoich dotychczasowych doświadczeń i wiedzy do weryfikacji oprogramowania w danym kontekście aplikacji. Im większe mamy doświadczenie i wiedzę, tym lepiej testujemy. Podobnie jest w przypadku, gdy lepiej rozumiemy dany kontekst.

W codziennym życiu spotykamy się z różnymi przypadkami, na które testerzy reagują analizując kontekst. Oto przykłady.

  1. W Twoim projekcie nie ma dobrej specyfikacji wymagań. Co robi tester eksploracyjny? Szuka wyroczni testowej, która zastąpi mu specyfikację. Wyrocznią taką może być jego wiedza, ale nie tylko. Może to być również specyfikacja podobnego produktu.
  2. W projekcie nie ma dobrych przypadków testowych, a weryfikacja musi być przeprowadzana systematycznie. Co robi tester eksploracyjny? Zamienia testy na zdefiniowane sesje eksploracyjne, listy kontrolne lub heurystyki.
  3. Wymagania projektowe narzucają nierealny czas na testy. Co robi tester eksploracyjny? Korzysta z takich zasobów, jakie ma, zamieniając je w największą ilość informacji dla projektu.

W każdym przypadku tester uświadamia projekt o ryzykach związanych z brakami w środowisku testowania. Co robi w takim przypadku tester bazujący na przypadkach testowych? Nie może przecież odmówić wykonania zadania, bo nie zgadza się to z jego profesjonalną metodyką testowania. Uruchamia przypadki testowe, które posiada.

Dzięki testowaniu eksploracyjnemu możemy również definiować nasze cele i dostosowywać je do kontekstu i potrzeb projektowych.

  • Projekt chce defekty? Orientujemy się na ich znajdywanie.
  • Projekt chce zablokować wydanie niedojrzałej wersji oprogramowania? Szukamy dowodów na to, że tak jest.
  • Osoby decyzyjne chcą potwierdzenia, że produkt nadaje się do wydania. Dajemy im informację, czy tak jest.

Co robi w takim przypadku tester bazujący na przypadkach testowych? Uruchamia przypadki testowe.

Informacja w testowaniu eksploracyjnym nie jest wyłącznie informacją o defektach i liczbie wykonanych przypadków testowych wraz z ich statusem. Może być kompleksową informacją o jakości. Często jest tak, że wyniki testów systematycznych muszą być przetworzone przez kierowników testów. Ta analiza ma na celu określenie, czy jakość jest zła czy dobra. W testowaniu eksploracyjnym tester nie dostarcza pośrednich miar, a sam ocenia jakość. Jego przełożony może oczywiście nie uznawać tej oceny i z nią polemizować, ale sama konwersacja między nimi jest kształcąca dla obu stron. Kierownik może poznać perspektywę jakościową testera, a tester eksploracyjny może poznać granicę między dobrą a złą jakością (coś, co często określa się jako kryterium akceptacji). Mamy więc czysty przepływ informacji między członkami projektu.

Informacja ma krytyczne znaczenie dla każdego projektu. Większa świadomość defektów i jakości oprogramowania to lepsze decyzje biznesowe i lepsze oprogramowanie.

 

Jak dobrze wykonywać testy eksploracyjne uczymy w ramach laboratorium "Testy eksploracyjne" >>

 

To powinno Cię zainteresować