Co to jest testowanie eksploracyjne?

โšก Inteligentne podsumowanie

Testowanie eksploracyjne to podejล›cie do testowania, w ktรณrym testerzy projektujฤ… i wykonujฤ… przypadki testowe jednoczeล›nie, bez koniecznoล›ci wczeล›niejszego pisania skryptรณw. Polega ono na badaniu, uczeniu siฤ™ i intuicji testera, co pozwala na wykrywanie defektรณw, ktรณre czฤ™sto sฤ… pomijane w testowaniu skryptowym. Podejล›cie to jest powszechnie stosowane w programowaniu Agile.

  • ๐Ÿ” Definicja testowania eksploracyjnego: Testerzy projektujฤ… i uruchamiajฤ… testy โ€žw locieโ€, zamiast pisaฤ‡ dla nich skrypty z wyprzedzeniem.
  • ๐Ÿ†š vs. testowanie skryptowe: Testowanie skryptowe potwierdza wymagania, natomiast testowanie eksploracyjne bada i dostosowuje siฤ™ w trakcie testowania.
  • ???? ฤ†wiczenie rozwijajฤ…ce myล›lenie: Kล‚adzie nacisk na uczenie siฤ™, kreatywnoล›ฤ‡ i intuicjฤ™ testera, aby znaleลบฤ‡ ukryte bล‚ฤ™dy.
  • ๐Ÿ—‚๏ธ. Proces SBTM: Taksonomia bล‚ฤ™dรณw, karta testรณw, ramy czasowe, wyniki przeglฤ…du i podsumowanie.
  • โœ… Najlepszy dla: Brakujฤ…ce wymagania, wczesne iteracje, krytyczne aplikacje i doล›wiadczeni testerzy.
  • โš–๏ธ. Kompromis: Znajduje wiฤ™cej bล‚ฤ™dรณw i zachฤ™ca do kreatywnoล›ci, ale w duลผej mierze zaleลผy od umiejฤ™tnoล›ci testera.

Czym jest testowanie eksploracyjne

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 na bieลผฤ…co. Mogฤ… zanotowaฤ‡ pomysล‚y na to, co przetestowaฤ‡ przed wykonaniem testu. Testowanie eksploracyjne koncentruje siฤ™ bardziej na testowaniu jako dziaล‚aniu โ€žmyล›lฤ…cymโ€.

Testowanie eksploracyjne jest szeroko stosowane w modelach Agile i polega na odkrywaniu, badaniu i uczeniu siฤ™. Kล‚adzie nacisk na wolnoล›ฤ‡ osobistฤ… i odpowiedzialnoล›ฤ‡ indywidualnego testera.

Dlaczego testy eksploracyjne?

W ramach testowania skryptowego najpierw projektujesz przypadki testowe, a nastฤ™pnie przechodzisz do wykonania testu. Z kolei testowanie eksploracyjne to jednoczesny proces projektowania testรณw i wykonywania testรณw, wszystkie wykonywane w tym samym czasie.

Wykonywanie testรณw skryptowych to zazwyczaj czynnoล›ฤ‡ niewymagajฤ…ca myล›lenia, w ktรณrej testerzy wykonujฤ… kroki testowe i porรณwnujฤ… rzeczywiste wyniki z oczekiwanymi. Takie wykonywanie testรณw moลผna zautomatyzowaฤ‡, poniewaลผ nie wymaga wielu umiejฤ™tnoล›ci poznawczych.

Testowanie eksploracyjne

Chociaลผ obecny trend w testowaniu oprogramowania polega na forsowaniu automatyzacjatestowanie eksploracyjne to nowy sposรณb myล›lenia. Automatyzacja ma swoje ograniczenia

Testowanie eksploracyjne

Rรณลผnice miฤ™dzy testowaniem skryptowym a testowaniem eksploracyjnym

Testowanie skryptowe Testowanie eksploracyjne
Kierowane z wymagaล„ Kierowane na podstawie wymagaล„ i eksploracji podczas testowania
Okreล›lenie 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 badania Obejmuje dochodzenie
Chodzi o testy kontrolne Dotyczy ulepszenia projektu testรณw
Podobnie jak wygล‚aszanie przemรณwienia โ€“ czytasz z szkicu Jak prowadzenie rozmowy โ€“ to jest spontaniczne
Scenariusz rzฤ…dzi Umysล‚ testera ma kontrolฤ™

Techniki testowania eksploracyjnego

  • Nie jest to testowanie losowe, ale testowanie ad hoc majฤ…ce na celu znalezienie bล‚ฤ™dรณw
  • Jest zorganizowany i rygorystyczny
  • Jest poznawczo (myล›lowo) ustrukturyzowany w porรณwnaniu do proceduralnej struktury testowania skryptowego. Ta struktura pochodzi z Charter, time boxing itp.
  • Jest bardzo ล‚atwy do nauczenia i opanowania
  • To nie jest technika, ale podejล›cie. To, jakie dziaล‚ania wykonasz pรณลบniej, zaleลผy od tego, co robisz obecnie

Jak przeprowadziฤ‡ testy eksploracyjne

Poniลผej przedstawiono krok po kroku proces przeprowadzania testรณw eksploracyjnych, nazywanych rรณwnieลผ zarzฤ…dzaniem testami opartymi na sesjach (cykl SBTM):

Krok 1) Utwรณrz taksonomiฤ™ bล‚ฤ™dรณw (klasyfikacja)

  • Kategoryzuj typowe typy usterek znalezionych w poprzednich projektach
  • Przeanalizuj analizฤ™ przyczyn ลบrรณdล‚owych problemรณw lub usterek
  • Znajdลบ zagroลผenia i opracuj pomysล‚y na przetestowanie aplikacji.

Krok 2) Karta testowa

  • Karta testu powinna sugerowaฤ‡
    1. co testowaฤ‡
    2. jak moลผna to przetestowaฤ‡
    3. Co trzeba obejrzeฤ‡
  • 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

Krok 3) Czas Box

  • Metoda ta zakล‚ada, ลผe โ€‹โ€‹para testerรณw pracuje wspรณlnie nie krรณcej niลผ 90 minut
  • W tych 90-minutowych sesjach nie powinno byฤ‡ ลผadnych przerw
  • Timebox moลผna wydล‚uลผyฤ‡ lub skrรณciฤ‡ o 45 minut
  • Sesja ta zachฤ™ca testerรณw do reagowania na odpowiedลบ systemu i przygotowania siฤ™ na prawidล‚owy wynik

Krok 4) Revzobacz wyniki

  • Ocena usterek
  • Uczenie siฤ™ z testรณw
  • Analiza obszarรณw zasiฤ™gu

Krok 5) Podsumowanie

  • Zestawienie wynikรณw wyjล›ciowych
  • Porรณwnaj wyniki z kartฤ…
  • Sprawdลบ, czy potrzebne sฤ… dodatkowe badania

Najlepsza praktyka Testowanie eksploracyjne

Podczas wykonywania operacji eksploracyjnych naleลผy wykonaฤ‡ nastฤ™pujฤ…ce czynnoล›ci:

  • Misja testowania powinna byฤ‡ bardzo jasna
  • Prowadลบ notatki na temat tego, co naleลผy przetestowaฤ‡, dlaczego naleลผy to przetestowaฤ‡ i oceny jakoล›ci produktu
  • Tracking pytaล„ i problemรณw podniesionych podczas testรณw eksploracyjnych
  • Aby mรณc skutecznie testowaฤ‡, lepiej poล‚ฤ…czyฤ‡ testerรณw w pary
  • Im wiฤ™cej testujemy, tym wiฤ™ksze prawdopodobieล„stwo, ลผe wykonamy wล‚aล›ciwe przypadki testowe dla wymaganych scenariuszy

Bardzo waลผne jest, aby zabraฤ‡ ze sobฤ… dokument i monitorowaฤ‡ nastฤ™pujฤ…ce kwestie

  • Pokrycie testรณw โ€“ czy sporzฤ…dziliล›my notatki na temat pokrycia przypadkรณw testowych i poprawiliล›my jakoล›ฤ‡ oprogramowania
  • Ryzyka โ€“ ktรณre ryzyka naleลผy uwzglฤ™dniฤ‡ i ktรณre sฤ… istotne?
  • Dziennik wykonania testu โ€“ zapisy dotyczฤ…ce wykonania testu
  • Problemy / Zapytania โ€“ rรณb notatki na temat pytaล„ i problemรณw w systemie

Inteligentniejsze testy eksploracyjne pozwalajฤ… znaleลบฤ‡ wiฤ™cej bล‚ฤ™dรณw w krรณtszym czasie.

Plusy i minusy testรณw eksploracyjnych

Zalety

  • Testowanie to jest przydatne, gdy dokumenty wymagaล„ nie sฤ… dostฤ™pne lub sฤ… dostฤ™pne czฤ™ล›ciowo
  • Obejmuje proces dochodzenia, ktรณry pomaga znaleลบฤ‡ wiฤ™cej bล‚ฤ™dรณw niลผ normalne testowanie-
  • Odkryj bล‚ฤ™dy, ktรณre zwykle sฤ… ignorowane przez inne techniki testowania
  • Pomaga poszerzyฤ‡ wyobraลบniฤ™ testerรณw, wykonujฤ…c coraz wiฤ™cej przypadkรณw testowych, co ostatecznie poprawia rรณwnieลผ produktywnoล›ฤ‡
  • To testowanie siฤ™ga do najmniejszej czฤ™ล›ci aplikacji i obejmuje wszystkie wymagania
  • Testowanie to obejmuje wszystkie rodzaje testรณw i obejmuje rรณลผne scenariusze i przypadki
  • Wspiera kreatywnoล›ฤ‡ i intuicjฤ™
  • Generowanie nowych pomysล‚รณw podczas wykonywania testรณw

Wady

  • Testowanie to zaleลผy wyล‚ฤ…cznie od umiejฤ™tnoล›ci testera
  • Ograniczone wiedzฤ… domenowฤ… testera
  • Nie nadaje siฤ™ do dล‚ugiego czasu realizacji

Wyzwania testowania eksploracyjnego

Testowanie eksploracyjne wiฤ…ลผe siฤ™ z wieloma wyzwaniami, ktรณre wyjaล›niono poniลผej:

  • Nauka obsล‚ugi aplikacji lub systemu oprogramowania jest wyzwaniem
  • Powtรณrzenie poraลผki jest trudne
  • Ustalenie, czy naleลผy uลผyฤ‡ narzฤ™dzi, moลผe byฤ‡ trudne
  • Okreล›lenie najlepszych przypadkรณw testowych do wykonania moลผe byฤ‡ trudne
  • Raportowanie wynikรณw testรณw jest wyzwaniem, poniewaลผ raport nie zawiera zaplanowanych scenariuszy ani przypadkรณw, ktรณre moลผna by porรณwnaฤ‡ z rzeczywistym wynikiem lub wynikiem
  • Dokumentacja wszystkich zdarzeล„ podczas realizacji jest trudna do udokumentowania
  • Podczas testowania eksploracyjnego nie ma ล›ciล›le okreล›lonych przypadkรณw testowych do wykonania, co utrudnia podjฤ™cie decyzji, kiedy zakoล„czyฤ‡ testowanie.

Kiedy stosowaฤ‡ testy eksploracyjne?

Testowanie eksploracyjne moลผe byฤ‡ szeroko stosowane, gdy

  • Zespรณล‚ testujฤ…cy skล‚ada siฤ™ z doล›wiadczonych testerรณw
  • Wymagana jest wczesna iteracja
  • Istnieje krytyczna aplikacja
  • Do zespoล‚u doล‚ฤ…czyli nowi testerzy

FAQ

Testowanie eksploracyjne jest ustrukturyzowane, celowe i wykorzystuje karty i ramy czasowe do wyszukiwania bล‚ฤ™dรณw, podczas gdy testowanie ad hoc jest nieformalne i nieplanowane. Testowanie eksploracyjne jest udokumentowane i powtarzalne, podczas gdy testowanie ad hoc zazwyczaj takie nie jest.

Testowanie eksploracyjne to w wiฤ™kszoล›ci czynnoล›ci manualne, oparte na myล›leniu, poniewaลผ opiera siฤ™ na intuicji testera i decyzjach podejmowanych w czasie rzeczywistym. Narzฤ™dzia mogฤ… jednak rejestrowaฤ‡ sesje, zapisywaฤ‡ logi i wspieraฤ‡ dokumentacjฤ™ w trakcie testowania.

SBTM to ustrukturyzowany sposรณb przeprowadzania testรณw eksploracyjnych w ramach sesji ograniczonych czasowo i opartych na certyfikacie. Testerzy dokumentujฤ… swoje ustalenia, a nastฤ™pnie podsumowujฤ… je, aby przeanalizowaฤ‡ pokrycie, defekty i ewentualnฤ… potrzebฤ™ dalszych testรณw.

Sztuczna inteligencja wspiera testowanie eksploracyjne, podpowiadajฤ…c pomysล‚y na testy, generujฤ…c karty, analizujฤ…c dzienniki pod kฤ…tem anomalii i identyfikujฤ…c obszary nieprzetestowane. Wzmacnia intuicjฤ™ testera, zamiast zastฤ™powaฤ‡ proces myล›lenia eksploracyjnego.

Nie. Testowanie eksploracyjne opiera siฤ™ na ludzkiej kreatywnoล›ci, ciekawoล›ci i ocenie dziedziny, ktรณrych AI nie jest w stanie w peล‚ni odtworzyฤ‡. Sztuczna inteligencja wspomaga, zajmujฤ…c siฤ™ powtarzalnฤ… analizฤ…, ale wykwalifikowani testerzy pozostajฤ… niezbฤ™dni do dokonywania odkryฤ‡.

Podsumuj ten post nastฤ™pujฤ…co: