Što je negativno testiranje?
- Očito je da testiranje softvera s samo pozitivnim scenarijima osigurava rad softvera kako se očekuje, ali ne jamči kako će raditi u neočekivanim situacijama. Kao ispitivač, glavni motiv testiranja je pronaći što je više moguće oštećenja i osigurati da aplikacija treba raditi ispravno čak i za slučajne situacije. U tu svrhu je u sliku ušlo negativno testiranje koje pokriva sve scenarije koje treba testirati na neočekivano ljudsko ponašanje i nevaljani unos od strane korisnika.
- Općenito je poznato kao testiranje greške ili testiranje greške. To je vrsta testiranja softvera koja se provodi kako bi se osiguralo da se softverska aplikacija ne prekida i graciozno rješava situacije neočekivanih scenarija poput neispravnog unosa korisnika, gubitka mrežne povezanosti, nedostajuća potrebna polja itd.
- Kad se aplikacija preda krajnjim korisnicima, nije tako da će oni obavljati samo pozitivne scenarije ispitivanja, ljudski um pokušava izigrati trikove i obaviti nekoliko nelogičnih i neprikladnih zadataka bilo da testira aplikaciju ili za neke osobne neetičke sredstva.
- Stoga je vrlo važno testirati aplikaciju sa svakom permutacijom i kombinacijom podataka kako biste provjerili kako aplikacija reagira. Na primjer, pisanje abecede ili posebnih znakova u polju telefonskog broja, predavanje obrasca bez popunjavanja obaveznih pojedinosti itd. Takve se situacije trebaju lijepo rješavati porukom upozorenja. To se radi s namjerom provjere stabilnosti softverske aplikacije.
Zašto su nam potrebna negativna ispitivanja?
Nekoliko je razloga za provođenje negativnog testiranja. Neke od njih su spomenute u nastavku:
- Iako krajnjim korisnicima nije moguće osigurati 100% softver bez grešaka, njegovo izvršavanje i pokrivanje maksimalnih negativnih scenarija mogu osigurati da aplikacija može podnijeti neočekivane situacije.
- Na tržištu postoji puno hakera koji traže priliku za hakiranje aplikacija i zlouporabu privatnih podataka kupca, kako bi se izbjegle takve situacije narušavanja sigurnosti, vrlo je važno negativno testiranje.
- Otkrivanje rupe u aplikaciji izvođenjem radi sprečavanja neočekivanog ponašanja.
- Osigurajte stabilnost primjene izvan krajnjih, neuobičajenih i loših podataka.
- Da bismo klijentu pružili ranjivu i robusnu aplikaciju, negativno testiranje je potrebno.
Kako se provodi negativno testiranje?
Jer to zahtijeva i vrijeme i troškove. Za provođenje poboljšanih negativnih ispitivanja potreban je poseban tim testera.
- Za svaku funkcionalnost treba stvoriti negativne ispitne slučajeve koji navode više scenarija ispitivanja.
- Negativne scenarije sa svim mogućim nevaljanim podacima treba testirati u skladu s prioritetom negativnih podataka.
Dvije su tehnike koje testeri najčešće koriste za negativno testiranje koje su navedene u nastavku:
1. Analiza granične vrijednosti
U analizi granične vrijednosti negativni testni slučajevi dizajnirani su za vrijednosti izvan graničnih granica kako bi se provjerilo kako sustav radi na njima. Na primjer, ako tekstualno polje u obrascu prihvati podatke od 5-30 znakova, tada bi granične granice bile 5 i 30 i stoga bi se te vrijednosti testirale.
2. Podjela za ekvivalenciju
U Equivalence Partition, ulazne vrijednosti se dijele na različite particije ekvivalentnih podataka, a samo se nekoliko vrijednosti svake particije testira kako bi se provjerila cijela particija. Ako su podaci proslijeđeni, onda cijela particija smatra da je prolazak drugi propao. U gornjem primjeru, za tekstualno polje koje prihvaća podatke između 5-30, particije bi bile 0-5, 5-30, 30-100, za negativno testiranje testirale bi se particije od 0-5 i 30-100.
Prednosti i nedostaci negativnog testiranja
U nastavku su prednosti i nedostaci negativnih ispitivanja:
prednosti
- Da biste osigurali ranjiv i kvalitetan softver, negativno testiranje je potrebno.
- Kako bi se spriječilo cyber kriminala i neetičkih hakiranja softvera, sigurnosno testiranje negativnih scenarija igra važnu ulogu.
- Pruža im sigurnost da se aplikacija testira na sve negativne scenarije i stoga je pouzdanija.
- Osigurava da softverska aplikacija rješava sve pogreške ili loše situacije.
Nedostaci
- Ponekad, u nekim aplikacijama, to postaje gubljenje vremena. Intenzivno pokrivanje svih negativnih scenarija s više negativnih podataka ispitivanja nije uvijek potrebno. Testerci se ponekad toliko uključe u to da se rigorozno pozitivno testiranje (osnovno funkcioniranje aplikacije) poništava.
- Za detalje, u projektu je potreban poseban tim testera koji mogu uzrokovati velike probleme s proračunom projekta.
- Ciklus puštanja aplikacije ponekad se odgađa.
- Za negativno testiranje potrebni su visoko iskusni ljudi.
Alati koji se koriste za negativno testiranje
Iako na tržištu ne postoje određeni alati. Ispitni slučajevi koji pokrivaju sve negativne scenarije mogu se izvesti ručno ili putem skripti za automatizaciju. Najvažnija stvar tijekom izvođenja je maksimalni broj permutacija testnih podataka koji se mogu testirati za testni slučaj. Ručno testiranje test slučaja sa svakim testnim podacima može biti malo dosadno i dugotrajno, ali ovaj zadatak se može olakšati automatskim testiranjem. Skripte za automatizaciju mogu se stvoriti pomoću jednostavnih alata za automatizaciju dostupnih na tržištu kao što su Selenium, TestComplete, Appium, Cucumber itd. Automatizacijske skripte mogu biti korisne kako bi se obuhvatili jer se svi testni podaci mogu pohraniti u jednu datoteku za svaki testni slučaj i skripta se može izvoditi iznova i iznova za svaki testni podatak.
Zaključak
Negativno testiranje nije uključeno i nikada nije dio pozitivnog testiranja, jer pozitivno testiranje osigurava da sustav funkcionira u skladu sa zahtjevima i kako je spomenuto u dokumentima (SRS), dok ukazuje na robusnost, ranjivost i standard kvalitete visoke kvalitete softver. Negativno testiranje jednako je važno kao i pozitivno testiranje, jer obje imaju različite namjere testiranja softvera. Što više softvera prolazi testiranje, manje su šanse da rizik na tržištu učini aplikaciju stabilnijom i pouzdanijom.
Preporučeni članci
Ovo je vodič za negativna ispitivanja. Ovdje raspravljamo o uvodu negativnog testiranja, zašto nam je potrebno ovo testiranje zajedno s prednostima i nedostacima. Možete pogledati i sljedeće članke da biste saznali više -
- Ispitivanje jedinice
- Statičko ispitivanje
- Ispitivanje integracije sustava
- Ispitivanje crne kutije
- Tehnike ispitivanja crne kutije