Što je statičko ispitivanje?
Od mnogih korištenih tehnika, statičko je ispitivanje još jedna koja pomaže u otkrivanju kvarova u softveru. Statičko testiranje radi to bez izvršavanja testnog slučaja. To uključuje ispitivanje koda i također provjerava potreban dokument koji je uključen, ali ne treba program da se izvrši. To je u suprotnosti sa dinamičkim testiranjem koje je uključeno u program i njegovo izvršavanje.
Statičko ispitivanje je dokazani način poboljšanja kvalitete i produktivnosti kada je u pitanju razvoj softvera i postupak testiranja. Pomaže testerima ili programerima da isprave svoje nedostatke u ranoj fazi razvoja softvera. Može se obaviti ručno ili uz pomoć alata. Postoje različite preglede, upute, inspekcije i analize koje pomažu u pronalaženju problema bez izvršenja.
Zašto obavljati statičko testiranje?
Statičko ispitivanje pomaže u pronalaženju ranih oštećenja. Ovi nedostaci ako se pronađu u ranim fazama mogu se ispraviti i neće ići u daljnje faze. Rokovi razvoja su smanjeni jer se kôd može brzo razviti slijedeći smjernice.
Kako bi se problemi našli u ranijim fazama, troškovi testiranja bili bi smanjeni kao rezultat uštede puno vremena. Sve to zauzvrat poboljšava kvalitetu razvoja. Povećava se i produktivnost programera jer već imaju niz smjernica, pregleda, inspekcija itd. (O kojima se raspravlja u kasnijim fazama ovog članka) koje je potrebno slijediti. Također smanjuje broj kvarova koji se pojave u kasnijoj fazi ispitivanja.
Koji je opseg statičkog ispitivanja?
- Statičko ispitivanje može se koristiti za ispitivanje kućišta ispitivanja. Ovo je prva početna faza u kojoj se mogu naći problemi. Drugo područje u kojem je korisno statičko ispitivanje je dokument o poslovnim zahtjevima. Pomaže u preispitivanju zahtjeva i približavanju legitimnim potrebama sustava. Može se koristiti i u slučajevima kada su na slici slučajevi upotrebe.
- Druga područja u kojima statičko testiranje može učiniti čuda, primjećujući probleme su funkcionalni zahtjevi, prototip, dokument specifikacije prototipa, testni podaci, matrični dokument sljedivosti, vodiči za obuku i dokumenti, itd. Nadodati na sve to također je korisno. u automatizaciji i testiranju performansi gdje se problematična područja mogu unaprijed pronaći.
Kako se izvodi statičko ispitivanje?
Za provođenje statičkog ispitivanja potrebno je slijediti nekoliko načina. Inspekciju treba obaviti u potpunosti kako bi se pregledao i dizajnirao aplikacija. Statičko ispitivanje uglavnom se usredotočuje na recenzije. Može se održavati popis za provjeru u kojem se spominje svaki dokument tako da se osigura da su sve recenzije u potpunosti pokrivene.
Nekoliko aktivnosti koje su izvedene u ovom testiranju, navedene su u nastavku:
- Provjera zahtjeva slučaja upotrebe: U ovoj validaciji sve su akcije krajnjeg korisnika identificirane i potvrđene. Također provjerava sve različite ulazne i izlazne radnje koje su povezane sa slučajem upotrebe. Što je više pojedinosti o slučaju upotrebe, to je veća točnost izrađenih testnih slučajeva.
- Provjera funkcionalnih zahtjeva: Pomaže u primjeni svih funkcionalnih promjena, promjena baze podataka, sučelja popisa, mrežnih zahtjeva, promjena hardvera i softvera. To je korak kojim se osigurava da se sve potrebne promjene primijete i provode.
- Pregled arhitekture: Kompletna arhitektura projekta zahtijeva poslužitelje koji su prisutni na različitim lokacijama, mrežni dijagrami, definicije protokola, dostupnost baze podataka, uravnoteženje opterećenja itd. To pomaže u dobivanju cjelovitog pregleda opreme koja se koristi i dizajna arhitekture.
- Validacija prototipa ili ekrana za obradu zaslona: uključuje provjeru zahtjeva i slučajeve uporabe koji se temelje na njima.
- Provjera rječnika polja: Sva polja koja se upotrebljavaju u korisničkom sučelju zahtijevaju provjeru valjanosti. Za različita polja treba provjeriti minimalnu i maksimalnu duljinu, navesti različite vrijednosti, poruke o pogreškama itd. Vrlo je važno popisati ta polja i provjeriti jesu li provjerena.
Kada koristite statičko ispitivanje u svom protoku, treba imati na umu da se proizvod provjerava ručno ili pomoću određenih alata. Postoje dvije vrste tehnika statičkog ispitivanja. Uglavnom su to pregledi i ispitivanja s alatima.
Tehnike statičkog ispitivanja
Tehnike uključene u testiranje su kako slijede:
- Neformalni pregledi
- Walkthroughs
- Tehnički pregledi
- inspekcije
- Statička analiza
Dopustite da vam ukratko objasnimo sve ove tehnike.
1) Neformalni pregledi
- Ovo su prvi pregledi koji su započeti u ranoj fazi dokumenta. Kao što mu ime kaže, to se može učiniti neformalno između dvije osobe, pri čemu se više ljudi može dodati kasnije. Ovdje nije uključen nikakav postupak, pa stoga nije napravljena nikakva dokumentacija za reviziju. Poboljšava se kvaliteta dokumenta koji se priprema. Iako postoji mnogo načina za formalno testiranje, najčešće se koriste neformalni. Ovaj postupak prolazi kroz 6 koraka. To uključuje:
- Planiranje
- Početi igru
- priprema
- Pregledni sastanak
- Preraditi
- Slijedite
- Formalno planiranje pregleda uključuje moderatora koji pregledava tablicu i brine se o detaljima rasporeda sesije planiranja. Početni sastanak se odvija i s ciljem kohezivnog i jasnog razumijevanja svim sudionicima je dana vremenska crta za dokumentiranje i obvezu na tražene promjene.
- Svima je dan kratki uvod o toj temi. Nakon toga, sudionici pojedinačno pregledavaju svaki dokument i dijele svoje artefakte s recenzentom. Tada se obavlja formalni pregled na sastanku za recenziju koji označava sva pitanja kao što je razgovarano i donosi se konačna odluka. Bilo koji specifični problem također se bilježi. Na temelju tih pregleda sastanaka, svi pronađeni nedostaci prerađuju se. Daljnji koraci se poduzimaju radi provjere očekivanih promjena.
- Autor preuzima odgovornost za te nedostatke jer ne treba raditi na svakoj nedostatku. Moderator tada provjerava jesu li poduzete sve očekivane radnje ili ne. Svi nedostaci bilježe se prijedlozima za poboljšanje postupka. Zadatak moderatora je da provjeri sve mjerne podatke i procijeni izlazne kriterije za raspravu i radnje.
2) Priručnici
- U ovom koraku sudjeluju drugi i dobivaju se kolektivne povratne informacije od tima tako da postoji zajedničko razumijevanje koje ispunjava svrhu dokumenta. Tim ne treba detaljno proučavati. Autori su već pripremljeni za ovaj pregled. Svi sadržaji koji se prezentiraju trebaju biti procijenjeni. Predložena rješenja trebaju biti potvrđena prije nego što se o njima raspravlja.
- Dokument koji se pregledava prošao je autor dokumenta, a od ostalih se ljudi traži da provjere i pruže svoje mišljenje o dokumentu. Mnogo je povratnih informacija koje se uzimaju u obzir. Korak po korak, objašnjenje pomaže sudionicima u dobivanju jasne slike. Oni mogu proučiti kôd i pregledati ga prije sastanka. Pomaže u stvaranju dokumenta više razine.
- Obuhvaćen je širok odjeljak koji osigurava da nijedan aspekt zahtjeva ne bude izostavljen. Stvara se zajedničko razumijevanje oko dokumenta i predlažu se rješenja ili alternative.
3) Tehnički pregled
- Ovo je formalni sastanak na kojem se raspravlja o tehničkom sadržaju dokumenta. Potrebne su upute stručnjaka. Usredotočuje se na dobivanje vrijednosti tehničkih podataka prisutnih u projektu. Pomaže u dosljednosti i osigurava ispravnost svih tehničkih detalja. Provođenjem tehničkog pregleda očekuje se postizanje konsenzusa o tehničkim aspektima svih dokumenata.
- Nakon završetka dokumentacije od stručnjaka se traži da obave neformalni pregled. Ti stručnjaci mogu biti arhitekti, glavni dizajneri, ključni korisnici itd. Suradnici ili programeri također mogu biti dio ove recenzije. Svi tehnički koncepti mogu procijeniti svi u ovoj recenziji. Također je osigurala da se ispravni koncepti koriste na pravom mjestu.
4) Inspekcija
- Ovo je formalna vrsta pregleda koji se održava. Ovdje viši ili obučeni tim tim vodi inspekcijski postupak. Prije nego što se sastanak dogodi, svi recenzenti su pripremljeni i dokumenti su pripremljeni. Inspekcija osigurava pregledavanje kompletnog proizvoda i otkrivanje nedostataka. Svi pronađeni nedostaci moraju se održavati u zapisnicima. Inspekcija se fokusira na poboljšanje kvalitete dokumenta koji se pregledava.
- Učinkovito je u pronalaženju nedostataka i izrađuje dokumente koji imaju vrlo visoku razinu kvalitete. To je i način da se zabilježe prethodni nedostaci i da se više ne ponavljaju slični nedostaci. Sve nedostatke koji se pojave bilježe se i raspravljaju. Daljnja rasprava o ovim dokumentima vrši se samo kada se nedostaci utvrde. Usredotočuje se na pronalaženje nedostataka u ranoj fazi i zauzvrat, u velikoj mjeri poboljšava kvalitetu softvera.
Statički alati za ispitivanje
Alate za statičku analizu uglavnom koriste programeri. Oni se mogu vidjeti kao produžetak prevodilaca. Neki prevoditelji u sebi imaju i značajku statičke analize. Provjerava statičke zahtjeve i analizira statičku analizu web stranica. Korištenjem ovih alata kôd se može razviti na način koji je lako razumljiv.
Standardi za kodiranje mogu se postaviti pomoću ovih alata. Ovaj se korak usredotočuje na testiranje tehnike, dizajna i koda pomoću automatiziranih alata. Fokus je na softverskom kodu. Koriste ga programeri prije i za vrijeme integracijskog testiranja.
Različiti alati uključeni u statičko ispitivanje su sljedeći:
- Standardi kodiranja: Da bi programeri imali ujednačen način, potrebno je osigurati da se poštuju svi postavljeni standardi kodiranja. Alat se može koristiti za provjeru ovih standarda. Ako se za to ne koristi alat, onda je manje pouzdano u skladu s standardom kodiranja.
- Metrike koda: Strukturni atributi koda mogu se mjeriti korištenjem kodnih metrika. Kad softver krene u izgradnju, kod čini kompleksnim. Mjerne vrijednosti koda pomažu u dizajniranju učinkovitog i mogu imati i druge mogućnosti prilikom redizajniranja koda.
- Struktura koda: U ovoj fazi odlučuje se o strukturi koda poput kontrolnog toka, strukture podataka i njihovog protoka. Radi na slijedu u kojem se upute izvršavaju u programu. To uključuje petlje i iteracije, različite uvjete koji će se koristiti u programu. Kôd koji se uopće ne koristi, poznat i kao mrtvi kod može se prepoznati u ovoj fazi i ukloniti. Tok programa određuje stavke podataka kojima se pristupa i tada se u skladu s tim mogu izvršiti promjene u kodu. Sve strukture podataka, uključujući složene strukture podataka, mogu se identificirati.
Prednosti i nedostatci
Ispod su neke od prednosti i nedostataka statičkog ispitivanja
prednosti
- Ispitivanje obično provode stručnjaci koji imaju dobro tehničko znanje i znanje o kodiranju.
- Ova tehnika se može koristiti za okretnost i brzinu u pronalaženju pogrešaka.
- U ovom se testiranju mogu koristiti alati za automatizaciju što proces skeniranja i pregledavanja čini brzim.
- Kad je uključeno statičko ispitivanje, pogreške se mogu otkriti u ranoj fazi i na taj način smanjuju troškove popravljanja tih problema.
- Svi se rizici mogu lako ublažiti jer se koriste alati za automatizaciju.
Nedostaci
- Problemi i slabe točke mogu stvoriti problem kada se kôd izvršava u stvarnom vremenu
- Ovi alati skeniraju samo kod
- Statičko ispitivanje zahtijeva mnogo vremena ako se izrađuje ručno.
- Alati za automatizaciju ponekad mogu pružiti lažne pozitivne i negativne slučajeve. Oni također skeniraju samo kod koji može dovesti do funkcionalnih oštećenja.
Zaključak
Statičko ispitivanje je najlakši i najučinkovitiji način pronalaženja oštećenja koda u ranijoj fazi. Stručnjaci pregledavaju kôd, a problemi se uzimaju prije testiranja. Pomaže i u postavljanju standarda koda koji mogu pratiti svi.
Ovo testiranje obično rade programeri, pa se tehnička pitanja mogu umanjiti u ranoj fazi. Smanjuje rizik od nedostataka u proizvodnji zbog glupih izdanja dokumentacije. Sve se to unaprijed provjerava i stoga vodi do manjih problema.
Preporučeni članci
Ovo je vodič za statičko ispitivanje. Ovdje smo razgovarali o tome kako se izvodi, tehnikama, alatima, prednostima i nedostacima statičkog ispitivanja. Možete i proći naše druge predložene članke da biste saznali više -
- Što je virtualizacija u računalstvu u oblaku?
- Funkcionalno ispitivanje vs nefunkcionalno ispitivanje
- Karijere u testiranju softvera
- Pitanja za intervjuiranje softvera
- Rječnik na Pythonu