Š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.
Skriptirano izvođenje testa obično je aktivnost bez razmišljanja gdje ispitivači izvršavaju korake testa i uspoređuju stvarne rezultate s očekivanim rezultatima. Takva aktivnost izvođenja testa može se automatizirati i ne zahtijeva mnogo kognitivnih vještina.
Iako je trenutni trend u testiranju softvera poticanje automatizacija, istraživačko testiranje je novi način razmišljanja. Automatizacija ima svoje granice
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
- što testirati
- kako se može testirati
- Š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
- Praćenje pitanja i problema postavljenih 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
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
Zaključak
U softverskom inženjerstvu, istraživačko testiranje provodi se kako bi se prevladala ograničenja skriptiranog testiranja. Pomaže u poboljšanju Testni slučaj svita. Suosjeća s učenjem i prilagodljivošću.