Co to jest testowanie eksploracyjne? Techniki z przykładami

Spisie treści:

Anonim

Co to jest testowanie eksploracyjne?

TESTOWANIE EKSPLORACYJNE to rodzaj testowania oprogramowania, w którym przypadki testowe nie są tworzone z wyprzedzeniem, ale testerzy sprawdzają system w locie. Mogą zapisywać pomysły dotyczące tego, co należy przetestować przed wykonaniem testu. Testowanie eksploracyjne koncentruje się bardziej na testowaniu jako czynności „myślącej”.

Testowanie eksploracyjne jest szeroko stosowane w modelach zwinnych i polega na odkrywaniu, badaniu i uczeniu się. Podkreśla osobistą wolność i odpowiedzialność indywidualnego testera.

W przypadku testowania skryptowego najpierw projektujesz przypadki testowe, a później przystępujesz do wykonywania testów. Wręcz przeciwnie, testowanie eksploracyjne to jednoczesny proces projektowania testów i wykonywania testów wykonywanych w tym samym czasie.

Wykonywanie testów za pomocą skryptów jest zwykle bezmyślną czynnością, w ramach której testerzy wykonują kroki testowe i porównują rzeczywiste wyniki z oczekiwanymi. Taka aktywność wykonywania testów może zostać zautomatyzowana i nie wymaga wielu umiejętności poznawczych.

Chociaż obecnym trendem w testowaniu oprogramowania jest nacisk na automatyzację , testowanie eksploracyjne jest nowym sposobem myślenia. Automatyzacja ma swoje ograniczenia

Różnice między testowaniem skryptowym i eksploracyjnym

Testowanie skryptowe Testowanie eksploracyjne
Wyreżyserowane z wymagań Kieruje się wymaganiami i eksploruje podczas testowania
Określanie przypadków testowych z dużym wyprzedzeniem Określanie przypadków testowych podczas testowania
Potwierdzenie testów z wymaganiami Badanie systemu lub aplikacji
Kładzie nacisk na przewidywanie i podejmowanie decyzji Kładzie nacisk na zdolność adaptacji i uczenie się
Obejmuje potwierdzone testy Obejmuje dochodzenie
Chodzi o kontrolowanie testów Chodzi o doskonalenie projektowania testów
Jak wygłaszanie przemówienia - czytasz z wersji roboczej Jak rozmowa - jest spontaniczna
Skrypt ma kontrolę Umysł testera jest pod kontrolą

Testowanie eksploracyjne -

  • Nie jest to testowanie losowe, ale testowanie ad hoc w celu znalezienia błędów
  • Jest zorganizowany i rygorystyczny
  • Ma strukturę poznawczą (myślową) w porównaniu z proceduralną strukturą testowania skryptowego. Ta struktura pochodzi z Karty, boksu czasowego itp.
  • Jest bardzo łatwy w nauczaniu i zarządzaniu
  • To nie jest technika, ale podejście. To, jakie czynności wykonujesz później, zależy od tego, co robisz w danej chwili

Jak przeprowadzić testy eksploracyjne

Poniżej przedstawiono krok po kroku proces przeprowadzania testów eksploracyjnych, zwany również zarządzaniem testami opartymi na sesji (cykl SBTM):

  1. Utwórz taksonomię błędów (klasyfikacja)
    • Kategoryzuj typowe typy usterek znalezionych w poprzednich projektach
    • Przeanalizuj analizę pierwotnej przyczyny problemów lub usterek
    • Znajdź zagrożenia i opracuj pomysły na przetestowanie aplikacji.
  2. Karta testowa
    • Karta testu powinna sugerować
      1. co przetestować
      2. jak można to przetestować
      3. Na co trzeba spojrzeć
    • Pomysły na testy są punktem wyjścia do testów eksploracyjnych
    • Karta testów pomaga określić, w jaki sposób użytkownik końcowy może korzystać z systemu
  3. Time Box
    • Ta metoda obejmuje parę testerów pracujących razem nie krócej niż 90 minut
    • Nie powinno być żadnych przerw w tych 90-minutowych sesjach
    • Timebox można wydłużyć lub skrócić o 45 minut
    • Ta sesja zachęca testerów do reagowania na odpowiedź systemu i przygotowania się na poprawny wynik
  4. Wyniki przeglądu:
    • Ocena wad
    • Uczenie się na podstawie testów
    • Analiza obszarów pokrycia
  5. Odprawa:
    • Kompilacja wyników wyjściowych
    • Porównaj wyniki z kartą
    • Sprawdź, czy potrzebne są dodatkowe testy

Na przykład podczas wykonywania eksploracyjnego należy wykonać następujące czynności:

  • Misja testowania powinna być bardzo jasna
  • Prowadź notatki o tym, co należy przetestować, dlaczego należy to sprawdzić i ocenę jakości produktu
  • Śledzenie pytań i problemów pojawiających się podczas testów eksploracyjnych
  • Lepiej połączyć testerów w pary w celu efektywnego testowania
  • Im więcej testujemy, tym większe prawdopodobieństwo, że wykonamy właściwe przypadki testowe dla wymaganych scenariuszy

Bardzo ważne jest, aby wziąć dokument i monitorować następujące kwestie

  • Pokrycie testów - czy zrobiliśmy notatki na temat pokrycia przypadków testowych i poprawiliśmy jakość oprogramowania
  • Ryzyka - jakie rodzaje ryzyka należy pokryć i które są wszystkie ważne?
  • Dziennik wykonania testów - zapisy dotyczące wykonania testu
  • Problemy / zapytania - sporządzaj notatki dotyczące pytania i problemów w systemie

Inteligentniejsze testy eksploracyjne znajdują więcej błędów w krótszym czasie.

Plusy i minusy testów eksploracyjnych

Zawodowiec Kon
  • To testowanie jest przydatne, gdy dokumenty wymagań są niedostępne lub częściowo dostępne
  • Obejmuje proces dochodzeniowy, który pomaga znaleźć więcej błędów niż zwykłe testowanie-
  • Odkryj błędy, które są zwykle ignorowane przez inne techniki testowania
  • Pomaga rozwinąć wyobraźnię testerów, wykonując coraz więcej przypadków testowych, co ostatecznie poprawia również produktywność
  • To testowanie do najmniejszej części aplikacji i obejmuje wszystkie wymagania
  • To testowanie obejmuje wszystkie rodzaje testów i obejmuje różne scenariusze i przypadki
  • Zachęca do kreatywności i intuicji
  • Generowanie nowych pomysłów podczas wykonywania testów
  • Testowanie zależy wyłącznie od umiejętności testera
  • Ograniczona wiedzą dziedzinową testera
  • Nie nadaje się do długiego czasu realizacji

Wyzwania testowania eksploracyjnego:

Istnieje wiele wyzwań związanych z testowaniem eksploracyjnym, które wyjaśniono poniżej:

  • Nauka obsługi aplikacji lub systemu oprogramowania jest wyzwaniem
  • Replikacja awarii jest trudna
  • Określenie, czy narzędzia muszą być używane, może być trudne
  • Określenie najlepszych przypadków testowych do wykonania może być trudne
  • Raportowanie wyników testu jest wyzwaniem, ponieważ raport nie zawiera zaplanowanych skryptów ani przypadków, które można by porównać z rzeczywistym wynikiem lub wynikiem
  • Dokumentacja wszystkich zdarzeń podczas realizacji jest trudna do zarejestrowania
  • Nie wiem, kiedy zakończyć testowanie, ponieważ testowanie eksploracyjne ma określone przypadki testowe do wykonania.

Kiedy korzystasz z testów eksploracyjnych?

Testowanie eksploracyjne może być szeroko stosowane, gdy

  • Zespół testujący ma doświadczonych testerów
  • Wymagana jest wczesna iteracja
  • Istnieje krytyczna aplikacja
  • Do zespołu weszli nowi testerzy

Wniosek:

W inżynierii oprogramowania testy eksploracyjne są wykonywane w celu przezwyciężenia ograniczeń testowania skryptowego. Pomaga w ulepszaniu zestawu przypadków testowych. Współczuje nauce i zdolnościom adaptacyjnym.