when stop testing
Kriteriji za izlaz u testiranju:
'Dobro započeto gotovo je gotovo' - Primjenjuje se svugdje, čak i za testiranje softvera.
Na početku projekta testere softvera vidimo vrlo oduševljene. Mi stvaramo ispitni dokumenti kao što su strategija testiranja, plan testiranja ili test slučajevi željno i s oduševljenjem.
Zatim krećemo u testiranje softvera pomoću BANG-a! To samo pojačavaju zanimljivi nedostaci koje smo pronašli na početku projekta. Njihovo rješavanje samo će pridonijeti našem postignuću.
Kako pronađemo gomilu nedostataka i dovršimo prvu seriju, prelazimo na sljedeću fazu. Kad dođemo do druge vožnje, nekako se opustimo, kao što je i opća ljudska tendencija dosadivši testirati istu stvar u drugoj vožnji.
koji je najbolji program za čišćenje računala
Mnogi testeri smatraju da to postaje monotono djelo u kasnijim izvodima i počnite gubiti interes za testiranje istog softvera iznova i iznova. Kad dođemo do, možda trećeg pokretanja, jedno nas pitanje počinje proganjati, a to je 'Kada prestati testirati softver?'
Kladim se da ste i vi sigurno osjećali isto i pitali: 'Kada prestati s testiranjem?', Barem jednom. Rekao bih da je pitanje 'Kada, gdje i kako zaustaviti testiranje?' :)
Konceptualno smo pročitali i mnogi testeri vjeruju da ne može postojati određeni uvjet ili jednadžba za odlučivanje 'Kada zaustaviti testiranje?' Moramo uzeti u obzir brojne čimbenike prije nego što završimo s ovim pitanjem.
U današnjem članku želio bih podijeliti svoja razmišljanja o tome kako zaključiti ispitne aktivnosti kada u našem ciklusu testiranja dođemo do točke u kojoj možemo reći da je ovo testiranje dovoljno. To ćemo učiniti uz pomoć nekoliko primjera iz stvarnog života u tipičnom ciklusu testiranja.
Što ćete naučiti:
- Kada je dovoljno testiranja?
- Zaustavljanje kad se pronađu svi nedostaci: Je li moguće?
- Odluka o prestanku testiranja: Izlazni kriteriji
- Što su kriteriji završetka ili izlaska?
- Što bi trebalo biti prisutno u kriterijima izlaska?
- Testiranje se može zaustaviti kada:
- Zaključak:
- Preporučena literatura
Kada je dovoljno testiranja?
Kada možemo reći da je ovoliko ispitivanja dovoljno? Može li se testiranje ikad završiti?
Da bismo odgovorili na ova pitanja, morat ćemo analizirati aktivnosti testiranja od početka do kraja. Imajte na umu da - definirat ću ove aktivnosti u smislu laika - Ne na otmjeni tehnički način.
Uzmimo u obzir da započinjete testiranje novog projekta.
Početne aktivnosti:
- Ispitni tim prima zahtjeve.
- Počinje ispitni tim planiranje i projektiranje.
- Dokumenti početnog testa su spremni i pregledani.
Probno testiranje br. 1)
- Ispitni tim započinje izvršavanje testa nakon što prime razvijeni proizvod.
- Tijekom faze testiranja izvršavaju različite scenarije kako bi razbili softver i pronašli mnoge nedostatke. (Također, ovdje je stopa kvara veća jer je aplikacija nova i po prvi puta prolazi evaluaciju.)
- Programeri popravljaju nedostatke i vraćaju se testnom timu na ponovno testiranje.
- Ispitni tim vrši ponovno ispitivanje nedostataka i izvršava regresiju.
- Jednom kada se većina ozbiljnih nedostataka riješi i softver izgleda stabilno, razvojni tim izdaje sljedeću verziju.
Testiranje br. 2)
- Testirački tim započinje drugu seriju testiranja, a slične aktivnosti se izvode kao 1. pokretanje.
- U ovom procesu tijekom drugog ispitivanja uhvati se još nekoliko nedostataka.
- Programeri popravljaju nedostatke i vraćaju se testnom timu na ponovno testiranje.
- Ispitni tim ponovno testira nedostatke i izvodi ih regresija .
Ovo se može nastaviti zauvijek. Trčite 3, trčite 4 nadalje dok se ne pronađu svi nedostaci u softveru i softver postane bez grešaka.
Ako želimo nacrtati dijagram toka za ove aktivnosti, to će otprilike izgledati kao u nastavku:
Iz gornjeg dijagrama toka možemo jasno zaključiti da se ispitivanje može nastaviti dok se ne pronađu svi nedostaci u softveru.
Ali pitanje je - je li moguće pronaći svaku pojedinu manu u softveru? Pokušajmo pronaći odgovor na ovo pitanje od milijun dolara :).
Zaustavljanje kad se pronađu svi nedostaci: Je li moguće?
Većina softvera je složena i ima ogroman opseg testiranja. Nije nemoguće pronaći sve nedostatke u softveru, ali to će potrajati zauvijek.
Čak i nakon pronalaska mnogih grešaka u softveru, nitko zapravo ne može jamčiti da je softver bez kvarova. Ne može biti situacije da sa sigurnošću možemo reći da smo završili testiranje, pronašli sve nedostatke u softveru i da više nema grešaka.
Štoviše, svrha testiranja nije pronaći svaku pogrešku u softveru. Namjera testiranja softvera je dokazati da softver radi kako je predviđeno razbijanjem ili pronalaženjem odstupanja između njegovog trenutnog ponašanja i očekivanog ponašanja.
U softveru postoje neograničeni nedostaci i stoga je nepraktično testirati ga dok se ne pronađu svi nedostaci jer nikada ne možemo znati koji je nedostatak posljednji. Istina je da ne možemo ovisiti o pronalaženju svih nedostataka u softveru kako bismo zaključili svoje testiranje.
Iskreno govoreći, testiranje je beskrajno i ciklusi testiranja nastavit će se dok se ne donese odluka kada i gdje zaustaviti. Sada postaje još složenije donijeti odluku o prestanku testiranja. Ako 'zaustavljanje kad se pronađu svi nedostaci' nije kriterij za zaustavljanje ispitivanja, na temelju čega bi se trebalo odlučiti?
Odluka o prestanku testiranja: Kriteriji za izlaz
Pokušajmo sada razumjeti - Koji su najvažniji čimbenici koje treba uzeti u obzir prilikom zaključivanja testiranja? Smatram da odluka o prestanku testiranja uglavnom ovisi o tome Vrijeme, proračun i opseg ispitivanja.
Najčešći pristup je zaustavljanje kada se potroši Vrijeme / Budžet ili se izvrše svi testni scenariji. Međutim, ovim pristupom kompromitirat ćemo kvalitetu testiranja i to neće dati dovoljno povjerenja u softver; kako?
Da vidimo sprimjer.
Testni scenarij:
Pretpostavimo da testirate softverski modul. Dodijeljen vam je određeni proračun za njegovo pokrivanje. Vremenski raspored projekta je mjesec dana. Ukupan scenarij testa je 200. Vi ste jedini koji testira ovaj modul.
Scenarij 1)
1. tjedan: Defekt showstopper / ozbiljnosti 1 pronašli ste 1. dan i cijelo testiranje je blokirano na 3 dana. Stoga ne možete izvršiti nijedan od scenarija dok se ne riješi kvar ozbiljnosti 1. Nakon gubitka 3 dana, bloker je riješen i vi nastavljate s izvršenjem.
Na kraju tjedna dovršite 20 scenarija s još nekoliko važnih maksimuma prioritetne mane .
2. tjedan: Počinjete testirati softver stavljajući veći fokus na pronalaženje nedostataka. Otvorite još nekoliko grešaka ozbiljnosti 1, ozbiljnosti 2 i ozbiljnosti 3 tijekom drugog tjedna, a na kraju tjedna možete pokriti 70 scenarija.
3. tjedan: Do početka 3rdtjedan ćete riješiti sve kvarove visokog prioriteta, tako da zajedno s izvršenjem scenarija na čekanju sada morate ponovno testirati sve nedostatke koji su dosli u skupinu za testiranje. Nastavljajući s dobrim napretkom, pokrivate 120 scenarija s dodatnim nedostacima.
U to su vrijeme svi visokokvalitetni kvarovi već pronađeni i prijavljeni. Dakle, sada su vam preostale samo nedostaci težine 3.
4. tjedan: Do 4. tjedna morate ponovno testirati većinu otvorenih nedostataka i preostalih 80 scenarija. Ovim ćete do kraja 4. tjedna moći dovršiti do 180 scenarija s popravljenim i ponovno testiranim svim nedostacima visokog i srednjeg prioriteta.
Stavljanje ovih podataka u tablični oblik:
Tjedni | Provedene testne aktivnosti | Rezultat na kraju tjedna |
---|---|---|
1. tjedan | • 1. dan - Pokažite otkriveni nedostatak čepa. • Testiranje je blokirano zbog oštećenja ozbiljnosti 1 pronađenog 1. dana. • Kvar blokera riješen 4. dana. • Izvršenje testa nastavljeno do kraja 1. tjedna. | • Otvoreni visoki prioritetni / kritični nedostaci. • Dovršeno 20 scenarija. |
2. tjedan | • Više se usredotočite na pronalaženje nedostataka. • Izvršenje preostalih scenarija ispitivanja. • Ponovno ispitivanje ispravljenih nedostataka. | • Otvoreno je još nekoliko oštećenja ozbiljnosti 1, ozbiljnosti 2 i ozbiljnosti 3. • Ukupno pokriveno 70 pokrivenih scenarija. |
3. tjedan | • Ponovno ispitivanje svih visokoprioritetnih kvarova. • Izvršenje preostalih scenarija ispitivanja. • Preostali su samo nedostaci težine 3. | • Otvoreno je još nekoliko oštećenja ozbiljnosti 1, ozbiljnosti 2 i ozbiljnosti 3. • Ukupno pokriveno 120 pokrivenih scenarija. |
4. tjedan | • Ponovno ispitivanje svih visokih i srednjih prioriteta. • Izvršenje preostalih scenarija ispitivanja. | • Otvoreno je još nekoliko oštećenja ozbiljnosti 3. • Ukupno pokrivanje 180 pokrivenih scenarija. |
Treba li ovdje stati?
Razlog koji ste iscrpili Vrijeme testiranja u potpunosti te su prijavili i otklonili većinu kvara visokog prioriteta. Hoće li vam zaustavljanje u ovom trenutku pružiti povjerenje u softver? Ne baš zbog dolje navedenih razloga:
- Scenariji se ne izvršavaju u potpunosti.
- Malo koji protok nije niti jednom testiran.
- Svi obuhvaćeni scenariji izvršavaju se samo jednom.
- Softver još uvijek ima nedostataka.
- Regresija nije obuhvaćena.
Scenarij 2)
1. tjedan: Otkrivanje ozbiljnosti 1 pronađeno je 1. dana i kompletno testiranje je blokirano na 3 dana. Stoga ne možete izvršiti nijedan od scenarija dok se ne riješi kvar ozbiljnosti 1. Nakon gubitka 3 dana bloker je riješen i vi nastavljate s izvršenjem.
Na kraju tjedna dovršite 20 scenarija s još nekoliko nedostataka. Ovaj tjedan ostaje isti kao i scenarij 1.
2. tjedan: Tijekom drugog tjedna otvorite još nekoliko oštećenja ozbiljnosti 1, ozbiljnosti 2 i ozbiljnosti 3, ali fokus je pokriti više scenarija za pokrivanje zaostataka od 1. tjedna. Na kraju tjedna možete pokriti 120 scenarija.
kako otvoriti ekstenziju datoteke json
3. tjedan: Do početka 3rdtjedan ćete riješiti sve otvorene nedostatke, pa zajedno s izvršavanjem scenarija na čekanju sada morate ponovno testirati sve nedostatke koji su dospjeli u skupinu za testiranje. I dalje nastavljajući s dobrim napretkom na kraju, broj završenih scenarija postaje 200 s dodatnim nedostacima.
Sada možete prijaviti samo nedostatke ozbiljnosti 2 i ozbiljnosti 3.
Stavljanje ovih podataka u tablični oblik:
Tjedni | Provedene testne aktivnosti | Rezultat na kraju tjedna |
---|---|---|
1. tjedan | • 1. dan - pronađite nedostatak čepa. • Testiranje je blokirano zbog oštećenja ozbiljnosti 1 pronađenog 1. dana. • Otklonjen nedostatak blokatora 4. dana. • Izvršenje testa nastavljeno do kraja 1. tjedna. | • Otvoreni visoki prioritetni / kritični nedostaci. • Dovršeno 20 scenarija. |
2. tjedan | • Fokus je na izvođenju više scenarija kako bi se pokrili zaostaci iz prethodnog tjedna. • Ponovno ispitivanje ispravljenih nedostataka. | • Otvoreno je još nekoliko oštećenja ozbiljnosti 1, ozbiljnosti 2 i ozbiljnosti 3. • Ukupno pokriveno 120 pokrivenih scenarija. |
3. tjedan | • Ponovno ispitivanje svih visokoprioritetnih kvarova. • Izvršenje preostalih scenarija ispitivanja. • Preostali su samo nedostaci ozbiljnosti 3 i nekoliko ozbiljnosti 2. | • Otvoreno je još nekoliko oštećenja ozbiljnosti 1, ozbiljnosti 2 i ozbiljnosti 3. • Pokriveni svi scenariji. |
Treba li ovdje stati?
Imaš u potpunosti obuhvatio sve scenarije testiranja jednom i otvorili su nekoliko glavnih nedostataka. Hoće li vam zaustavljanje u ovom trenutku pružiti povjerenje u softver?
Ne baš zbog dolje navedenih razloga:
- Svi se scenariji izvršavaju samo jednom.
- Softver još uvijek ima mnogo glavnih nedostataka.
- Regresija nije obuhvaćena.
Vidimo da je kvaliteta ugrožena u oba scenarija. Najbolji pristup bit će pronalaženje točke u kojoj su obuhvaćeni svi čimbenici iz scenarija 1 i scenarija 2, a kvaliteta također nije ugrožena. Da bismo to postigli morat ćemo definirati određene kriterije na početku testiranja.
Ti se kriteriji nazivaju kriterijima dovršenja ili izlaska. To je odgovor na naše pitanje - 'Kada zaustaviti testiranje?'.
Što su kriteriji završetka ili izlaska?
Izlazni se kriteriji ocjenjuju na kraju ciklusa ispitivanja i definirani su u Planu ispitivanja. Skup uvjeta ili aktivnosti moraju biti ispunjeni da bi se zaključilo ispitivanje.
Kriteriji za izlaz definiraju koliko je ispitivanja dovoljno i kada se aktivnosti ispitivanja mogu proglasiti dovršenima. Pokrivenost i kriteriji završetka kombiniraju se kako bi se definirali kriteriji izlaska za ispitivanje.
Što bi trebalo biti prisutno u kriterijima izlaska?
U idealnom slučaju, kriteriji za izlaz ili zaustavljanje definiraju se kombiniranjem različitih čimbenika i stoga su jedinstveni u svim projektima. Ovisi o zahtjevu projekta i stoga ga treba definirati tijekom planiranja ispitivanja; na početku projekta. Parametre definirane u njemu treba kvantificirati što je više moguće.
Ispod je nekoliko uputa koje treba uzeti u obzir prilikom definiranja kriterija izlaska u slučaju funkcionalnog ili sistemskog testiranja. Možete kombinirati nekoliko ili sve dolje navedene čimbenike dok odlučujete gdje ćete zaustaviti testiranje prema potrebama vašeg projekta.
Testiranje se može zaustaviti kada:
Zahtjevi:
- Postignuto je 100% pokrivanje zahtjeva.
Defekti:
- Postignut je broj definiranih / željenih nedostataka.
- Svi nedostaci ili blokatori Show Stopper popravljeni su i nijedna poznata kritična / ozbiljna greška 1 nije u statusu otvorenosti.
- Svi kvarovi visokog prioriteta su identificirani i otklonjeni.
- Stopa kvarova pada ispod definirane prihvatljive stope.
- Vrlo je malo kvarova srednjeg prioriteta otvorenih i ima zaobilazno rješenje.
- Vrlo malo otvorenih nedostataka niskog prioriteta koji ne utječu na upotrebu softvera.
- Svi se kvarovi visokog prioriteta ponovno testiraju i zatvaraju te se uspješno izvršavaju odgovarajući scenariji regresije.
Obuhvat ispitivanja:
- Obuhvat testom treba postići 95%.
- Prolaznost testnog slučaja trebala bi biti 95%. To se može izračunati formulom
- (Ukupan broj proslijeđenih TC / Ukupan broj TC) * 100.
- Prolaze se svi kritični slučajevi ispitivanja.
- 5% testnih slučajeva može biti neuspješno, ali neuspješni testni slučajevi su niskog prioriteta.
- Postignuto je potpuno funkcionalno pokrivanje.
- Svi glavni funkcionalni / poslovni tokovi uspješno se izvode s različitim ulaznim podacima i rade u redu.
Rokovi:
- Dostignut je rok za završetak projekta ili završni test.
Ispitni dokumenti:
- Svi ispitni dokumenti / isporučeni podaci (Primjer - Sažetak testa ) pripremaju se, pregledavaju i objavljuju.
Proračun:
- Potpuni proračun za testiranje je iscrpljen.
Sastanci 'Idi / ne idi':
- ' Idi / ne idi ' sastanak provedeno je sa dionicima i donosi se odluka treba li projekt ići u proizvodnju ili ne.
Zaključak:
Učinimo to na kraju vrlo jednostavnim.
Molimo odgovorite na pitanja jednostavnim da ili ne
Ako dobijete većinu odgovora kao Da, to znači da u ovom trenutku možete prestati s testiranjem. Ako je većina odgovora Ne, to znači da morate provjeriti što nedostaje prilikom testiranja, a to vam može pomoći u pronalaženju nedostatka u proizvodnji :)
- Izvode li se svi test slučajevi barem jednom?
- Je li stopa prolaznosti testnog slučaja definirana?
- Je li postignuto potpuno pokrivanje testom?
- Izvode li se svi funkcionalni / poslovni tokovi barem jednom?
- Je li postignuto brojanje utvrđenih nedostataka?
- Jesu li svi glavni kvarovi visokog prioriteta popravljeni i zatvoreni?
- Jesu li svi kvarovi testirani i zatvoreni?
- Je li učinjena regresija za sve otvorene nedostatke?
- Jeste li potrošili proračun za testiranje?
- Je li isteklo vrijeme završetka testiranja?
- Jesu li pregledani i objavljeni svi ispitni rezultati?
O autoru: Ovo je gostujući članak Renuke K. Ima više od 11 godina iskustva u testiranju softvera.
Nadam se da vam je ovaj članak bio koristan. Također bih želio čuti vaše misli / komentare na temu.
Sretno testiranje!
Preporučena literatura
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- Posao za QA pomoćnika za testiranje softvera
- Program tečaja za testiranje softvera - detaljan plan obuke za mrežni tečaj
- Tečaj za testiranje softvera: Koji bih se institut za testiranje softvera trebao pridružiti?
- Odabir testiranja softvera za vašu karijeru
- Testiranje softvera Posao pisca tehničkog sadržaja Posao slobodnjaka
- Neka zanimljiva pitanja za ispitivanje softverskog testiranja
- Povratne informacije i kritike o tečaju softverskog testiranja