what is negative testing
Imati najoptimalniju kvalitetu proizvoda primarni je cilj ispitnih organizacija.
Uz pomoć učinkovitog postupka osiguranja kvalitete, testni timovi pokušavaju pronaći maksimalne nedostatke tijekom njihovog ispitivanja , čime se osigurava da klijent ili krajnji korisnik koji konzumira proizvod ne uoči nikakve abnormalnosti u pogledu njegovog funkcioniranja u vlastitom računalnom okruženju.
Budući da je pronalazak nedostataka jedan od glavnih ciljeva ispitivača, on mora pažljivo izraditi ili dizajnirati scenarije ispitivanja kako bi bio siguran da određena aplikacija ili proizvod radi onako kako bi trebao.
Iako je definitivno važno provjeriti da li softver izvršava svoje osnovne funkcije kako je predviđeno, jednako je ili važnije provjeriti je li softver u stanju graciozno riješiti abnormalnu situaciju. Očito je da većina nedostataka proizlazi iz stvaranja takvih situacija uz razumnu i prihvatljivu kreativnost testera.
Većina nas je već svjesna nekoliko vrsta ispitivanja, poput funkcionalnog ispitivanja, ispitivanje razuma, ispitivanje dima , integracijsko testiranje, regresijsko ispitivanje , alfa i beta testiranje , ispitivanje pristupačnosti itd. Međutim, svi će se složiti da bilo koju kategoriju testiranja koju izvodite, cjelokupni napor ispitivanja može se u osnovi generalizirati u dvije kategorije: pozitivni putovi ispitivanja i negativni putovi ispitivanja.
Nastavimo sa sljedećim odjeljcima u kojima ćemo raspravljati o pozitivnom i negativnom testiranju, o tome kako se razlikuju i opisat ćemo neke primjere kako bismo razumjeli kakve negativne testove možemo provesti tijekom testiranja aplikacije.
Što ćete naučiti:
- Što je pozitivno i negativno testiranje?
- Praktični primjeri pozitivnog i negativnog testiranja
- Osnovni čimbenici koji pomažu u pisanju pozitivnih i negativnih testova
- Zaključak
- Preporučena literatura
Što je pozitivno i negativno testiranje?
Pozitivno testiranje
Pozitivno testiranje, koje se često naziva 'ispitivanjem sretne staze', obično je prvi oblik testiranja koji bi tester izveo na aplikaciji. To je postupak izvođenja testnih scenarija koji bi krajnji korisnik pokrenuo za svoju upotrebu. Dakle, kao što se podrazumijeva, pozitivno testiranje podrazumijeva pokretanje scenarija ispitivanja sa samo točnim i valjanim podacima. Ako testnom scenariju nisu potrebni podaci, tada bi pozitivno testiranje zahtijevalo pokretanje testa točno na način na koji bi se trebao pokrenuti, a time i osiguravanje da aplikacija ispunjava specifikacije.
Ponekad može postojati više načina za izvršavanje određene funkcije ili zadatka s namjerom da se krajnjem korisniku pruži veća fleksibilnost ili općenita konzistentnost proizvoda. To se naziva ispitivanje alternativnim putem, što je ujedno i vrsta pozitivnog testiranja. U ispitivanju alternativne staze, test se ponovno izvodi kako bi udovoljio svojim zahtjevima, ali koristeći drugačiji put od očitog puta. Testni scenarij čak bi trošio istu vrstu podataka da bi se postigao isti rezultat.
Shematski se može razumjeti iz vrlo generičkog primjera opisanog u nastavku:
A je početna točka, a B krajnja točka. Postoje dva načina za prelazak od A do B. Ruta 1 je općenito ruta, a Ruta 2 je alternativna ruta. Stoga bi u takvom slučaju testiranje sretne staze prelazilo od točke A do B pomoću Rute 1, a alternativno testiranje puta obuhvaćalo bi prelazak Rute 2 od A do B. Primijetite da je rezultat u oba slučaja isti.
Negativno testiranje
Negativno testiranje koje se obično naziva ispitivanje puta pogreške ili ispitivanje neuspjeha obično se radi kako bi se osigurala stabilnost aplikacije.
kako otvoriti datoteku bujice na Windowsima
Negativno testiranje postupak je primjene što više kreativnosti i provjere valjanosti aplikacije protiv nevaljanih podataka. To znači da je njegova svrha provjeriti prikazuju li se pogreške korisniku tamo gdje bi trebao ili blaže postupa s lošom vrijednošću.
Apsolutno je bitno razumjeti zašto je potrebno negativno testiranje.
Funkcionalna pouzdanost aplikacije ili softvera može se kvantificirati samo učinkovito dizajniranim negativnim scenarijima. Negativno testiranje ne samo da ima za cilj otkriti potencijalne nedostatke koji bi mogli ozbiljno utjecati na potrošnju proizvoda u cjelini, već mogu biti ključni u određivanju uvjeta pod kojima se aplikacija može srušiti. Konačno, osigurava dovoljno provjere pogrešaka u softveru.
Primjer:
Recimo da na primjer trebate napisati negativne testove olovke. Osnovni motiv olovke je sposobnost pisanja na papiru.
Neki primjeri negativnog testiranja mogu biti:
- Promijenite medij na kojem bi trebao pisati, s papira na tkaninu ili ciglu i provjerite treba li i dalje pisati.
- Stavite olovku u tekućinu i provjerite piše li ponovno.
- Zamijenite punjenje olovke praznim i provjerite treba li prestati pisati.
Praktični primjeri pozitivnog i negativnog testiranja
Uzmimo primjer čarobnjaka za korisničko sučelje za stvaranje nekih pravila. U čarobnjaku korisnik mora unijeti tekstualne vrijednosti u jedno okno, a numeričke vrijednosti u drugo.
Prvo okno:
U prvom se od korisnika očekuje da imenu da pravilo kako je prikazano u nastavku:
Uzmimo također neka osnovna pravila kako bismo bili sigurni da dizajniramo dobre pozitivne i negativne scenarije.
koji je najbolji mp3 downloader
Zahtjevi:
- Tekstualni okvir s imenom obvezan je parametar
- Opis nije obvezan.
- Polje s imenom može imati samo znakove a-z i A-Z. Nema brojeva, posebni znakovi nisu dopušteni.
- Ime može sadržavati najviše 10 znakova.
Ajmo sada dizajnirati pozitivne i negativne slučajeve testiranja za ovaj primjer.
Pozitivni testovi: Ispod je nekoliko pozitivnih scenarija testiranja za ovo posebno okno.
- ABCDEFGH (validacija velikih slova unutar ograničenja broja znakova)
- abcdefgh validacija malih slova unutar ograničenja broja znakova)
- aabbccddmn (provjera ograničenja broja znakova)
- aDBcefz (velika slova u kombinaciji s provjerom malih slova unutar ograničenja broja znakova)
- .. i tako dalje.
Negativni testni slučajevi : Ispod su neki negativni scenariji testiranja za ovo posebno okno.
- ABCDEFGHJKIOOOOOKIsns (ime koje prelazi 10 znakova)
- abcd1234 (ime ima numeričke vrijednosti)
- Nije navedeno ime
- sndddwwww_ (naziv koji sadrži posebne znakove)
- .. i tako dalje.
Drugo okno:
U drugom oknu od korisnika se očekuje da unese samo numeričke vrijednosti kao što je prikazano dolje:
Utvrdimo ovdje i neka osnovna pravila:
Zahtjevi:
- ID mora biti broj između 1 - 250
- ID je obvezan.
Stoga evo nekoliko pozitivnih i negativnih scenarija ispitivanja za ovo posebno okno.
Pozitivni scenariji ispitivanja : Ispod je nekoliko pozitivnih scenarija testiranja za ovo posebno okno.
- 12 (Unos valjane vrijednosti između navedenog raspona)
- 1.250 (Unos granične vrijednosti navedenog raspona)
Negativni scenariji ispitivanja : Ispod su neki negativni scenariji testiranja za ovo posebno okno.
- Ab (unos teksta umjesto brojeva)
- 0, 252 (Unos izvan graničnih vrijednosti)
- Null input
- -2 (unos vrijednosti izvan raspona)
- +56 (unos valjane vrijednosti s prefiksom posebnog znaka)
Osnovni čimbenici koji pomažu u pisanju pozitivnih i negativnih testova
Ako pažljivo promatrate gornje primjere, primijetit ćete da može biti više pozitivnih i negativnih scenarija. No učinkovito testiranje je kada optimizirate beskrajan popis pozitivnih i negativnih scenarija na takav način da vi postići dovoljno ispitivanja .
Također, u oba ova slučaja vidjet ćete uobičajeni obrazac kako se smišljaju scenariji. U oba navedena slučaja postoje dva osnovna parametra ili tehnike koji su činili osnovu za dizajniranje dovoljne količine pozitivnih i negativnih testnih slučajeva.
Dva su parametra:
Analiza granične vrijednosti :
Kao što samo ime govori, granica ukazuje na ograničenja nečega. Stoga ovo uključuje dizajniranje testnih scenarija koji se usredotočuju samo na granične vrijednosti i potvrđuju kako se aplikacija ponaša. Stoga, ako se ulazi daju unutar graničnih vrijednosti, to se smatra pozitivnim ispitivanjem, a ulazi izvan graničnih vrijednosti dijelom negativnog ispitivanja.
Na primjer, ako određena aplikacija prihvaća VLAN ID-ove u rasponu od 0 - 255. Stoga će ovdje 0, 255 formirati granične vrijednosti. Svi ulazi ispod 0 ili iznad 255 smatrat će se nevaljanima i stoga će predstavljati negativno testiranje.
Ekvivalentnost particioniranja :
U ekvivalentnoj particiji, podaci testa su odvojeni u različite particije. Te se particije nazivaju razredima podataka o ekvivalenciji. Pretpostavlja se da se različiti ulazni podaci (podaci mogu biti uvjet) u svakoj particiji ponašaju na isti način. Stoga se sa svake particije mora testirati samo jedan određeni uvjet ili situacija kao da jedan radi, a pretpostavlja se da svi ostali u toj particiji rade. Slično tome, ako jedan uvjet u particiji ne funkcionira, tada niti jedan od ostalih neće raditi.
Stoga je sada vrlo očito da će se valjane klase podataka (u particijama) sastojati od pozitivnog testiranja, dok će se nevaljane klase podataka sastojati od negativnog testiranja.
U istom primjeru VLAN-a gore, vrijednosti se mogu podijeliti u recimo dvije particije.
Dakle, dvije bi particije ovdje bile:
- Vrijednosti -255 do -1 u jednoj particiji
- Vrijednosti od 0 do 255 na drugoj particiji
bash uspoređuje datoteke redak po redak
Zaključak
Nekoliko puta suočio sam se sa situacijom da ljudi vjeruju da je negativno testiranje više-manje dupliciranje pozitivnog testiranja, a ne da vjeruje da to potkrepljuje pozitivno testiranje. Moje stajalište o tim pitanjima uvijek je bilo dosljedno kao ispitivač. Oni koji razumiju i teže visokim standardima i kvaliteti nesumnjivo će primijeniti negativno testiranje kao nužno u procesu kvalitete.
Iako pozitivno testiranje osigurava valjanost slučaja poslovne upotrebe, negativno testiranje osigurava da isporučeni softver nema nedostataka koji mogu biti odvraćanje od njegove upotrebe od strane kupca.
Dizajniranje preciznih i snažnih scenarija negativnog ispitivanja zahtijeva kreativnost, predviđanje, vještinu i inteligenciju ispitivača. Većina ovih vještina može se steći iskustvom, zato pričekajte i nastavite procijeniti svoj puni potencijal iznova i iznova!
O autoru: Ovo je gost članak Snehe Nadig. Radi kao voditeljica testiranja s više od 7 godina iskustva u projektima ručnog i automatiziranog ispitivanja.
Javite nam svoje misli i iskustva o negativnom testiranju.
Preporučena literatura
- Najbolji alati za testiranje softvera 2021. (Alati za automatizaciju ispitivanja kvalitete)
- Preuzimanje e-knjige za testiranje primera
- Kako napisati tjedno izvješće o testiranju softvera
- Razlika između testiranja radne površine, klijentskog poslužitelja i web testiranja
- Ispitivanje opterećenja pomoću HP LoadRunner vodiča
- Vodič za ispitivanje sigurnosti web aplikacija
- Testiranje aplikacija - u osnove testiranja softvera!
- Instalirajte svoju aplikaciju na uređaj i započnite testiranje iz Eclipsea