Što su probni proroci i heuristika ispitivanja?

U svijetu testiranja i osiguranja kvalitete često čujemo riječi Test Oracles i Test Heuristics, ali što su oni i kako ih možemo primijeniti u naše svakodnevne aktivnosti testiranja?

Pogledajmo vrlo lijepo objašnjenje probnih proročanstava i testne heuristike Katrina Clokie

Ispitna heuristika

Zamislite da želim pojesti kiseli krastavac. Moji kiseli krastavci čuvaju se u velikoj staklenoj posudi. U mom je kućanstvu posljednja osoba koja je pojela kiseli krastavčić bio moj suprug. Čvrsto je zatvorio posudu. U prvom pokušaju ga ne uspijevam otvoriti.

Što da radim dalje?

Provjeravam okrećem li se lijevo kako bih olabavio poklopac i pokušavam ponovno. Zatim dohvatim kuhinjsku krpu kako bih uspostavio bolji zahvat prilikom uvijanja poklopca staklenke. Napokon, u nekoj frustraciji, odem locirati svog supruga. Uspješno otvara teglu.

Kad se suočim s teglom koja se neće otvoriti, znam nekoliko stvari koje znam vrijedno isprobati. Ovo su moja heuristika otvaranja staklenki. Kad me upute da testiram softversku aplikaciju, znam nekoliko stvari koje znam vrijedno isprobati. To su moja testna heuristika.



Heuristika su jednostavno tehnike rješavanja problema, učenja i otkrivanja temeljene na iskustvu. Tamo gdje je iscrpna pretraga nepraktična, koriste se heurističke metode kako bi se ubrzao postupak pronalaska zadovoljavajućeg rješenja. Primjeri ove metode uključuju upotrebu pravila palca, obrazovanu pretpostavku, intuitivnu prosudbu ili zdrav razum.

Primjer:

Pretpostavimo da testirate web mjesto e-trgovine. Stranica rezultata pretraživanja većine web stranica za e-trgovinu sadrži filtre i funkcije sortiranja. Kroz godine iskustva u testiranju web stranica e-trgovine, saznao sam da će kombiniranje filtara i opcija sortiranja vjerojatno otkriti zanimljive greške, kao što je to bio slučaj mnogo puta, stoga ću na sljedećem projektu intuitivno testirati neke scenarije povezane s kombiniranjem filtara i opcija sortiranja.

Testirajte proročanstva

Zamislite da odem na ručak s prijateljem. U restoran ulazim u četvrtak u 12 sati. Nakon sat vremena uživanja u obroku, u petak napuštam restoran u 13 sati. Iako sam doživio samo jedan sat, svijet oko mene pomaknuo se za jedan dan.

Kako mogu znati da ovdje postoji problem?

Na mobitelu mogu imati nekoliko obavijesti od prijatelja i obitelji koji se pitaju gdje sam. Možda imam parkirnu kartu. Možda primijetim nekoga kako čita novine od petka.

Postoji nekoliko načina na koje bih mogao utvrditi da sam preskočio jedan dan svog života. Ovo su moja proročanstva koja putuju kroz vrijeme. Postoji nekoliko načina na koje bih mogao utvrditi da sam otkrio grešku u softverskoj aplikaciji. Ovo su moja probna proročanstva.

Proročanstva su jednostavno princip ili mehanizam po kojem prepoznajemo problem. Test Oracles su u osnovi vaši očekivani rezultati.

Primjer:

Pretpostavimo da testirate funkcionalnost prijave web mjesta. Prvo, možete provjeriti s važećim korisničkim imenom i valjanom lozinkom i očekivati da biste vidjeli preusmjeravanje na stranicu mog računa ili preusmjeravanje na stranicu prije prijave. Međutim, nakon što se pokušate prijaviti i vidite pogrešku 500 odgovor, vi znati da je nešto pošlo po zlu.

Proročanstva i heuristika u agilnom i istraživačkom ispitivanju

I probni proroci i testna heuristika presudni su kada je riječ o istraživačkom ispitivanju u okretnom okruženju. Kada nemamo dovoljno vremena za izradu testnih slučajeva, a proizvod se kontinuirano razvija, ne možemo se osloniti samo na unaprijed dizajnirane testne skripte, moramo koristiti svoje znanje iz domene (Test Oracles) i prethodno iskustvo u testiranju (Test Heuristics ) kako biste mogli brzo dizajnirati i istodobno izvršavati testove, a istovremeno učiti o proizvodu.