Dinamičko ispitivanje
Dinamičko testiranje je softverska metoda ispitivanja koja se koristi za testiranje dinamičkog ponašanja softverskog koda. Glavna svrha dinamičkog testiranja je testiranje ponašanja softvera s dinamičkim varijablama ili varijablama koje nisu konstantne i pronalaženje slabih područja u okruženju izvršavanja softvera. Kôd se mora izvršiti kako bi se testiralo dinamičko ponašanje.
Svi znamo da je testiranje provjera i provjera valjanosti, a potrebno je 2 Vs da bi testiranje bilo završeno. Od 2 Vs, verifikacija se naziva statičko ispitivanje, a drugo "V", validacija je poznata kao dinamičko testiranje.
Primjer dinamičkog ispitivanja
Razumijemo Kako napraviti dinamičko testiranje na primjeru:
Pretpostavimo da testiramo stranicu za prijavu na kojoj imamo dva polja: "Korisničko ime" i "Lozinka", a korisničko ime je ograničeno na alfanumeričko.
Kada korisnik unese Korisničko ime kao "Guru99", sustav prihvaća isto. Gdje kao kada korisnik uđe kao Guru99 @ 123, tada aplikacija šalje poruku o pogrešci. Ovaj rezultat pokazuje da kod djeluje dinamički na temelju korisničkog unosa.
Dinamičko testiranje je kada radite sa stvarnim sustavom pružanjem ulaznih podataka i usporedbom stvarnog ponašanja aplikacije s očekivanim ponašanjem. Drugim riječima, rad sa sustavom s namjerom pronalaženja pogrešaka.
Dakle, na temelju gornjih izjava možemo reći ili zaključiti da je dinamičko testiranje postupak provjere valjanosti softverskih aplikacija kao krajnjeg korisnika u različitim okruženjima za izgradnju pravog softvera.
Što radi dinamičko testiranje?
Glavni cilj dinamičkih testova je osigurati da softver radi ispravno tijekom i nakon instalacije softvera, osiguravajući stabilnu aplikaciju bez većih nedostataka (ova izjava je dana jer nijedan softver ne sadrži pogreške, a testiranje može pokazati samo prisutnost nedostataka i ne odsutnost)
Glavna svrha dinamičkog testa je osigurati dosljednost softvera; razgovarajmo o ovome na primjeru.
U aplikaciji za bankarstvo pronalazimo različite zaslone poput odjeljka Moji računi, prijenosa sredstava, plaćanja računa itd. Svi ovi zasloni sadrže polje za iznos koje prihvaća neke znakove.
Recimo da polje Moji računi prikazuje iznos od 25.000, a Prijenos sredstava kao 25.000 američkih dolara, a zaslon za plaćanje računa kao 25.000 američkih dolara, iako je iznos jednak, način na koji je iznos prikazan nije isti, što softver čini neskladnim.
Dosljednost nije ograničena samo na funkcionalnost, već se odnosi i na različite standarde poput izvedbe, upotrebljivosti, kompatibilnosti itd., Stoga postaje vrlo važno izvoditi dinamičko testiranje.
Vrste dinamičkog ispitivanja
Dinamičko ispitivanje klasificirano je u dvije kategorije
- Ispitivanje bijele kutije
- Ispitivanje crne kutije
Slijedeći slikovni prikaz daje nam predodžbu o vrstama dinamičkog ispitivanja, razinama ispitivanja itd.
Razgovarajmo ukratko o svakoj vrsti ispitivanja i njenoj namjeni
Ispitivanje bijele kutije - Ispitivanje bijele kutije softverska je metoda ispitivanja u kojoj je ispitivač upoznat s unutarnjom strukturom / dizajnom. Glavni cilj testiranja White Box-a je provjeriti kako sustav funkcionira na temelju koda. Uglavnom ga izvode programeri ili White Box testeri koji imaju znanje o programiranju.
Ispitivanje crne kutije - Ispitivanje crne kutije metoda je ispitivanja kod koje ispitivač NIJE poznata unutarnja struktura / kôd / dizajn . Glavni cilj ovog testiranja je provjera funkcionalnosti testiranog sustava i ova vrsta testiranja zahtijeva izvršavanje kompletnog paketa testova, a uglavnom ga provode testeri, a nije potrebno nikakvo znanje o programiranju.
Ispitivanje crne kutije ponovno se klasificira u dvije vrste.
Oni su
- Ispitivanje funkcionalnosti
- Nefunkcionalno ispitivanje
Funkcionalno ispitivanje:
Funkcionalno testiranje provodi se kako bi se potvrdilo da su sve razvijene značajke u skladu s funkcionalnim specifikacijama, a provodi se izvršavanjem slučajeva funkcionalnih testova koje je napisao QA tim, u fazi funkcionalnog testiranja, sustav se testira pružanjem ulaznih podataka, provjerom rezultata i uspoređujući stvarne rezultate s očekivanim rezultatima.
Postoje različiti stupnjevi funkcionalnog ispitivanja od kojih su najvažniji
- Jedinstveno testiranje - Općenito je Jedinica mali dio koda koji se može testirati, Jedinstveno testiranje izvodi se na pojedinoj jedinici softvera, a izvode ga programeri
- Integracijsko testiranje - Integracijsko testiranje je ispitivanje koje se izvodi nakon jediničnog testiranja i izvodi se kombiniranjem svih pojedinačnih jedinica koje se mogu testirati, a izvode ga programeri ili testeri
- Testiranje sustava - Testiranje sustava izvodi se kako bi se osiguralo funkcionira li sustav prema zahtjevima i obično se izvodi kad je kompletan sustav spreman, a provode ga testeri kada se gradnja ili kôd pusti u QA tim
- Ispitivanje prihvaćanja - Ispitivanje prihvaćanjem vrši se kako bi se provjerilo je li sustav udovoljavao poslovnim zahtjevima i je li spreman za upotrebu ili je spreman za implementaciju, a obično ga obavljaju krajnji korisnici.
Nefunkcionalno testiranje : Nefunkcionalno testiranje je tehnika ispitivanja koja se ne fokusira na funkcionalne aspekte i uglavnom se koncentrira na nefunkcionalne atribute sustava kao što su curenje memorije, performanse ili robusnost sustava. Nefunkcionalno testiranje provodi se na svim razinama ispitivanja.
Postoji mnogo nefunkcionalnih tehnika ispitivanja od kojih su najvažnije
- Ispitivanje izvedbe - Ispitivanje izvedbe provodi se kako bi se provjerilo je li vrijeme odziva sustava normalno prema zahtjevima pod željenim mrežnim opterećenjem.
- Ispitivanje oporavka - Ispitivanje oporavka metoda je kojom se provjerava koliko je dobro sustav u stanju oporaviti se od padova i hardverskih kvarova.
- Ispitivanje kompatibilnosti - Testiranje kompatibilnosti provodi se kako bi se provjerilo ponašanje sustava u različitim okruženjima.
- Sigurnosno testiranje - Sigurnosno testiranje provodi se kako bi se provjerila robusnost aplikacije, tj. Kako bi se osiguralo da samo ovlašteni korisnici / uloge pristupaju sustavu
- Ispitivanje upotrebljivosti - Ispitivanje upotrebljivosti metoda je kojom se krajnji korisnici mogu provjeriti iskoristivost sustava kako bi se provjerilo koliko su korisnici ugodni sa sustavom.
Tehnike dinamičkog ispitivanja
Tehnike dinamičkog testiranja u STLC-u sastoje se od različitih zadataka poput Analize zahtjeva za testove, planiranja testa, dizajna i implementacije testnih slučajeva, postavljanja testnog okruženja, izvršenja testnih slučajeva, izvještavanja o greškama i konačno zatvaranja testa. Svi zadaci u tehnikama dinamičkog ispitivanja ovise o završetku prethodnog zadatka u procesu ispitivanja.
U STLC-u možemo reći da stvarni postupak dinamičkog ispitivanja započinje od dizajna test slučaja, razgovarajmo detaljno o svakoj aktivnosti.
Prije ulaska u proces, razgovarajmo o strategiji koju treba slijediti za dinamičko testiranje.
Strategija testiranja trebala bi se uglavnom usredotočiti na raspoložive resurse i vremenski okvir. Na temelju tih čimbenika, mora se dokumentirati cilj ispitivanja, opseg ispitivanja, faze ili ciklusi ispitivanja, vrsta okoline, pretpostavke ili izazovi s kojima bi se mogli suočiti, rizici itd.
Jednom kada je strategija definirana i prihvaćena od strane uprave, započinje stvarni dizajn testnog slučaja procesa
Što je dizajn i provedba ispitivanja
U ovoj fazi identificiramo,
- Značajke koje treba testirati
- Izvedite uvjete ispitivanja
- Izvedite stavke pokrića
- Izvedite test slučajeve
Testiranje postavljanja okruženja
Moramo osigurati da okruženje za testiranje uvijek bude slično proizvodnom okruženju, u ovoj fazi moramo instalirati izradu i upravljati ispitnim strojevima.
Izvršenje testa
Tijekom ove faze, test slučajevi se zapravo izvršavaju.
Izvještaj o grešci snimljen
Na temelju izvršenja, ako očekivani i stvarni rezultati nisu isti, test slučaj mora biti označen kao Neuspjeh i treba se evidentirati greška.
Prednosti dinamičkog ispitivanja
- Dinamičko ispitivanje može otkriti otkrivene nedostatke za koje se smatra da su preteški ili komplicirani i koje se ne mogu pokriti statičkom analizom
- U dinamičkom testiranju izvršavamo softver od kraja do kraja, osiguravajući softver bez pogrešaka, što zauzvrat povećava kvalitetu proizvoda i projekta.
- Dinamičko testiranje postaje osnovni alat za otkrivanje bilo kakvih sigurnosnih prijetnji
Mane dinamičkog ispitivanja
- Dinamičko testiranje oduzima vrijeme jer izvršava aplikaciju / softver ili kod koji zahtijeva ogromnu količinu resursa
- Dinamičko testiranje povećava cijenu projekta / proizvoda jer ne započinje rano u životnom ciklusu softvera i stoga svi problemi riješeni u kasnijim fazama mogu rezultirati povećanjem troškova.
Zaključak:
U softverskom inženjerstvu, provjera i provjera valjanosti su dvije mjere kojima se provjerava ispunjava li softverski proizvod zahtjeve. Statičko ispitivanje uključuje provjeru, dok dinamičko testiranje uključuje provjeru valjanosti. Zajedno pomažu u isporuci isplativog kvalitetnog softvera.
Ovaj članak je napisala Radhika Renamala