Što je eksploratorno testiranje?

⚡ Pametni sažetak

Istraživačko testiranje je pristup testiranju u kojem testeri istovremeno dizajniraju i izvršavaju testne slučajeve bez prethodnog skriptiranja, naglašavajući istraživanje, učenje i intuiciju testera kako bi otkrili nedostatke koje skriptirano testiranje često propušta, što se široko koristi u agilnom razvoju.

  • 🔍 Definicija istraživačkog testiranja: Testeri dizajniraju i izvršavaju testove u hodu umjesto da ih unaprijed skriptiraju.
  • 🆚 u odnosu na skriptirano testiranje: Skriptirano testiranje potvrđuje zahtjeve; istraživačko testiranje istražuje i prilagođava se tijekom testiranja.
  • 🧠 Aktivnost razmišljanja: Naglašava učenje, kreativnost i intuiciju testera kako bi pronašao skrivene greške.
  • 🗂️ SBTM proces: Taksonomija grešaka, povelja o testiranju, vremenski okvir, rezultati pregleda i debriefing.
  • Najbolje za: Nedostajući zahtjevi, rane iteracije, kritične aplikacije i iskusni testeri.
  • ⚖️ Kompromis: Pronalazi više grešaka i potiče kreativnost, ali uvelike ovisi o vještinama testera.

Što je eksploratorno testiranje

Što je eksploratorno testiranje?

Istraživačko ispitivanje je vrsta testiranja softvera gdje se testni slučajevi ne kreiraju unaprijed već testeri provjeravaju sustav u hodu. Mogu zabilježiti ideje o tome što testirati prije izvođenja testa. Fokus eksplorativnog testiranja je više na testiranju kao "misaonoj" aktivnosti.

Eksploratorno testiranje naširoko se koristi u Agilnim modelima i sve je o otkrivanju, istraživanju i učenju. Naglašava osobnu slobodu i odgovornost pojedinog ispitivača.

Zašto istraživačko testiranje?

Kod skriptiranog testiranja prvo dizajnirate testne slučajeve, a kasnije nastavljate s izvođenjem testa. Naprotiv, istraživačko testiranje je simultani proces dizajna testa i izvođenja testa koji se obavljaju u isto vrijeme.

Izvršavanje skriptiranog testiranja obično je aktivnost bez razmišljanja gdje testeri izvršavaju korake testiranja i uspoređuju stvarne rezultate s očekivanim rezultatima. Takva aktivnost izvršavanja testiranja može se automatizirati jer ne zahtijeva mnogo kognitivnih vještina.

Istraživačko ispitivanje

Iako je trenutni trend u testiranju softvera poticanje automatizacija, istraživačko testiranje je novi način razmišljanja. Automatizacija ima svoje granice

Istraživačko ispitivanje

Razlike između skriptiranog i istraživačkog testiranja

Skriptirano testiranje Istraživačko ispitivanje
Usmjereno prema zahtjevima Usmjereno prema zahtjevima i istraživanju tijekom testiranja
Određivanje testnih slučajeva dosta unaprijed Određivanje testnih slučajeva tijekom testiranja
Potvrda ispitivanja sa zahtjevima Istraživanje sustava ili aplikacije
Naglašava predviđanje i donošenje odluka Naglašava prilagodljivost i učenje
Uključuje potvrđeno testiranje Uključuje istragu
Radi se o kontroli testova Radi se o poboljšanju dizajna testa
Poput držanja govora - čitate iz nacrta Poput vođenja razgovora – to je spontano
Scenarij je pod kontrolom Um ispitivača je pod kontrolom

Eksploratorne tehnike ispitivanja

  • Nije nasumično testiranje, već je ad-hoc testiranje sa svrhom pronalaženja grešaka
  • Strukturiran je i rigorozan
  • Je li kognitivno (misaono) strukturiran u usporedbi s proceduralnom strukturom testiranja skriptom. Ova struktura dolazi iz Povelje, vremenskog boksa itd.
  • Vrlo je poučljiv i upravljiv
  • To nije tehnika, ali je pristup. Koje ćete sljedeće radnje izvršiti ovisi o tome što trenutno radite

Kako izvršiti eksploratorne testove

Slijedi postupak korak po korak o tome kako izvesti eksploratorno testiranje koje se također naziva upravljanje testiranjem temeljeno na sesiji (SBTM ciklus):

Korak 1) Napravite taksonomiju grešaka (klasifikacija)

  • Kategorizirajte uobičajene vrste grešaka pronađenih u prošlim projektima
  • Analizirajte temeljni uzrok problema ili kvarova
  • Pronađite rizike i razvijte ideje za testiranje aplikacije.

Korak 2) Ispitna povelja

  • Test Charter bi trebao predložiti
    1. što testirati
    2. kako se može testirati
    3. Što treba pogledati
  • Ideje za testiranje polazište su istraživačkog testiranja
  • Testna povelja pomaže odrediti kako krajnji korisnik može koristiti sustav

Korak 3) Vrijeme Box

  • Ova metoda uključuje par testera koji rade zajedno najmanje 90 minuta
  • U tih 90 minuta ne bi trebalo biti prekida
  • Timebox se može produljiti ili smanjiti za 45 minuta
  • Ova sesija potiče testere da reagiraju na odgovor sustava i pripreme se za točan ishod

Korak 4) Review Rezultati

  • Procjena nedostataka
  • Učenje iz testiranja
  • Analiza područja pokrivenosti

Korak 5) Ispitivanje

  • Kompilacija izlaznih rezultata
  • Usporedite rezultate s poveljom
  • Provjerite jesu li potrebna dodatna ispitivanja

Eksploratorno testiranje najbolje prakse

Tijekom istražnog izvođenja potrebno je učiniti sljedeće:

  • Misija testiranja trebala bi biti vrlo jasna
  • Vodite bilješke o tome što je potrebno ispitati, zašto je potrebno ispitati i ocjeni kvalitete proizvoda
  • Tracking pitanja i problema koji su se pojavili tijekom istraživačkog testiranja
  • Bolje je upariti testere za učinkovito testiranje
  • Što više testiramo, vjerojatnije je da ćemo izvršiti prave testne slučajeve za potrebne scenarije

Vrlo je važno uzeti dokument i pratiti sljedeće

  • Pokrivenost testiranja – jesmo li uzeli bilješke o pokrivenosti testnih slučajeva i poboljšali kvalitetu softvera
  • Rizici – Koje rizike treba pokriti i koji su sve važni?
  • Dnevnik izvođenja testa – Snimci o izvođenju testa
  • Problemi/upiti – Vodite bilješke o pitanju i problemima u sustavu

Pametnije istraživačko testiranje pronalazi više pogrešaka u kraćem vremenu.

Za i protiv eksploratornog testiranja

Prednosti

  • Ovo testiranje je korisno kada dokumenti zahtjeva nisu dostupni ili su djelomično dostupni
  • Uključuje proces istraživanja koji pomaže u pronalaženju više grešaka od uobičajenog testiranja-
  • Otkrijte greške koje druge tehnike testiranja obično zanemaruju
  • Pomaže proširiti maštu testera izvođenjem sve više i više testnih slučajeva što konačno poboljšava i produktivnost
  • Ovo testiranje se svodi na najmanji dio aplikacije i pokriva sve zahtjeve
  • Ovo testiranje pokriva sve vrste testiranja i pokriva različite scenarije i slučajeve
  • Potiče kreativnost i intuiciju
  • Generiranje novih ideja tijekom izvođenja testa

Nedostaci

  • Ovo testiranje isključivo ovisi o vještinama ispitivača
  • Ograničeno poznavanjem domene ispitivača
  • Nije prikladno za Dugo vrijeme izvršenja

Izazovi eksploratornog ispitivanja

Mnogo je izazova istraživačkog testiranja, a oni su objašnjeni u nastavku:

  • Naučiti koristiti aplikaciju ili softverski sustav je izazov
  • Replikacija neuspjeha je teška
  • Određivanje treba li koristiti alate može biti izazovno
  • Određivanje najboljih testnih slučajeva za izvršenje može biti teško
  • Izvještavanje o rezultatima testa izazov je jer izvješće nema planirane skripte ili slučajeve za usporedbu sa stvarnim rezultatom ili ishodom
  • Dokumentaciju svih događaja tijekom izvršenja teško je evidentirati
  • Eksploratorno testiranje nema određene testne slučajeve za izvršavanje, što otežava odluku kada stati.

Kada koristiti eksplorativno testiranje?

Eksploratorno testiranje može se opsežno koristiti kada

  • Tim za testiranje ima iskusne testere
  • Potrebna je rana iteracija
  • Postoji kritična primjena
  • U tim su ušli novi testeri

Pitanja i odgovori

Istraživačko testiranje je strukturirano, svrsishodno te koristi povelje i vremensko ograničenje za pronalaženje grešaka, dok je ad-hoc testiranje neformalno i neplanirano. Istraživačko testiranje je dokumentirano i ponovljivo; ad-hoc testiranje obično nije.

Istraživačko testiranje je uglavnom ručna aktivnost vođena razmišljanjem jer se oslanja na intuiciju testera i odluke u stvarnom vremenu. Međutim, alati mogu snimati sesije, bilježiti zapisnike i podržavati dokumentaciju tijekom testiranja.

SBTM je strukturiran način provođenja istraživačkog testiranja u vremenski ograničenim sesijama vođenim poveljom. Testeri dokumentiraju svoje nalaze, a zatim daju izvještaje kako bi pregledali pokrivenost, nedostatke i je li potrebno dodatno testiranje.

Umjetna inteligencija podržava istraživačko testiranje predlažući ideje za testiranje, generirajući povelje, analizirajući zapisnike za anomalije i identificirajući netestirana područja. Povećava intuiciju testera umjesto da zamjenjuje istraživački proces razmišljanja.

Ne. Istraživačko testiranje oslanja se na ljudsku kreativnost, znatiželju i procjenu domene koju umjetna inteligencija ne može u potpunosti replicirati. Umjetna inteligencija pomaže u rješavanju ponovljenih analiza, ali vješti testeri ostaju ključni za otkrivanje.

Sažmite ovu objavu uz: