Metodologije preskušanja programske opreme: Naučite se modelov QA

Kazalo:

Anonim

Kaj je metodologija preskušanja programske opreme?

Metodologija preskušanja programske opreme je opredeljena kot strategija in vrsta preskušanja, s katero se potrjuje, da preizkušena aplikacija izpolnjuje pričakovanja strank. Testne metodologije vključujejo funkcionalno in nefunkcionalno testiranje za potrditev AUT. Primeri preskusnih metodologij so preskušanje enot, preskušanje integracije, preizkušanje sistema, preizkušanje zmogljivosti itd. Vsaka preskusna metodologija ima določen testni cilj, preskusno strategijo in končne rezultate.

Opomba : Ker je preizkušanje programske opreme sestavni del katere koli razvojne metodologije, številna podjetja v pogovoru uporabljajo izraz Razvojne metodologije in preskusne metodologije. Zato bi se metodologije preskušanja lahko nanašale tudi na modele Waterfall, Agile in druge QA, v nasprotju z zgornjo definicijo metodologij testiranja. Razprava o različnih vrstah preizkušanja bralcem ne doda vrednosti. Zato bomo razpravljali o različnih razvojnih modelih.

V tej vadnici boste izvedeli-

  • Model slapa
  • Iterativni razvoj
  • Agilna metodologija
  • Ekstremno programiranje
  • Katero metodologijo programske opreme izbrati?
  • Kako nastaviti metodologije preskušanja programske opreme?

Model slapa

Kaj je to?

Pri modelu slapov razvoj programske opreme napreduje skozi različne faze, kot so analiza zahtev, oblikovanje itd. - zaporedoma .

V tem modelu se naslednja faza začne šele, ko se zaključi prejšnja faza.

Kakšen je pristop testiranja?

Prva faza v modelu slapa je faza zahtev, v kateri so vse zahteve projekta v celoti opredeljene pred začetkom preskušanja. V tej fazi preskusna skupina razmišlja o obsegu testiranja, preskusni strategiji in pripravi podroben testni načrt.

Šele ko bo oblikovanje programske opreme končano, bo skupina prešla na izvajanje testnih primerov, da bi zagotovila, da se razvita programska oprema obnaša, kot je pričakovala.

V tej metodologiji skupina za testiranje preide v naslednjo fazo šele, ko je predhodna faza zaključena.

Prednosti

Ta model programske opreme je zelo preprost za načrtovanje in upravljanje. Zato lahko projekte, pri katerih so zahteve vnaprej jasno opredeljene in navedene, enostavno preizkusimo z uporabo modela slapa.

Slabosti

V modelu slapa lahko z naslednjo fazo začnete šele po zaključku prejšnje faze. Zato ta model ne more sprejeti nenačrtovanih dogodkov in negotovosti.

Ta metodologija ni primerna za projekte, kjer se zahteve pogosto spreminjajo.

Iterativni razvoj

Kaj je to?

V tem modelu je velik projekt razdeljen na majhne dele in vsak del je podvržen večkratnim ponovitvam modela slapa. Na koncu ponovitve se razvije nov modul ali izboljša obstoječi modul. Ta modul je integriran v programsko arhitekturo in celoten sistem je preizkušen skupaj

Kakšen je pristop testiranja?

Takoj, ko je ponovitev zaključena, se testira celoten sistem. Povratne informacije o testiranju so takoj na voljo in so vključene v naslednji cikel. Čas testiranja, potreben pri zaporednih ponovitvah, je mogoče skrajšati na podlagi izkušenj, pridobljenih iz preteklih ponovitev.

Prednosti

Glavna prednost iterativnega razvoja je testna povratna informacija, ki je takoj na voljo na koncu vsakega cikla.

Slabosti

Ta model znatno poveča režijske stroške komunikacije, saj morajo biti na koncu vsakega cikla podane povratne informacije o končnih rezultatih, naporu itd.

Agilna metodologija

Kaj je to?

Tradicionalne metodologije razvoja programske opreme delujejo tako, da zahteve po programski opremi ostajajo nespremenjene skozi ves projekt. Toda s povečanjem zahtevnosti se zahteve spreminjajo in se nenehno razvijajo. Kupec sam včasih ni prepričan, kaj hoče. Čeprav iterativni model obravnava to težavo, še vedno temelji na modelu slapa.

V metodologiji Agile se programska oprema razvija v postopnih, hitrih ciklih. Poudarek je na interakcijah med kupci, razvijalci in strankami kot na procesih in orodjih. Agilna metodologija se osredotoča na odzivanje na spremembe in ne na obsežno načrtovanje.

Kakšen je pristop testiranja?

Dodatno testiranje se uporablja v agilnih razvojnih metodah, zato je vsaka izdaja projekta temeljito preizkušena. To zagotavlja, da so napake v sistemu odpravljene pred naslednjo izdajo.

Prednosti

Projekt je mogoče kadar koli spremeniti, da izpolni zahteve.

To postopno preskušanje zmanjšuje tveganja.

Slabosti

Stalna interakcija s stranko pomeni dodaten časovni pritisk na vse zainteresirane strani, vključno s stranko, oddelkom za razvoj programske opreme in preskusnimi skupinami.

Ekstremno programiranje

Kaj je to?

Ekstremno programiranje je vrsta agilne metodologije, ki verjame v kratke razvojne cikle. Projekt je razdeljen na enostavne inženirske naloge. Programerji kodirajo preprost del programske opreme in se vrnejo stranki po povratne informacije. Vključijo se točke pregleda strank in razvijalci nadaljujejo z naslednjo nalogo.

V ekstremnem programiranju razvijalci običajno delajo v dvoje.

Ekstremno programiranje se uporablja tam, kjer se zahteve kupcev nenehno spreminjajo.

Kakšen je pristop testiranja?

Ekstremno programiranje sledi preizkusnemu razvoju, ki je opisan na naslednji način -

  1. V testni paket dodajte testni primer, da preverite novo funkcionalnost, ki še ni razvita
  2. Zaženite vse teste in očitno mora biti dodan novi testni primer neuspešen, saj funkcionalnost še ni kodirana
  3. Napišite nekaj kode za izvajanje funkcije / funkcionalnosti
  4. Ponovno zaženite testni paket. Tokrat bi moral novi testni primer preteči, saj je funkcionalno kodiran

Prednosti

Kupci, ki imajo v mislih nejasno zasnovo programske opreme, bi lahko uporabili ekstremno programiranje

Nenehno preizkušanje in nenehno povezovanje majhnih različic zagotavljata visoko kakovost programske kode

Slabosti

Srečanja med ekipo za razvoj programske opreme in strankami dodajajo časovne zahteve.

Katero metodologijo programske opreme izbrati?

Na voljo je veliko metodologij za razvoj programske opreme in ustrezna testiranja. Vsaka preskusna tehnika in metodologija je zasnovana za določen namen in ima svoje relativne prednosti in slabosti.

Izbira določene metodologije je odvisna od številnih dejavnikov, kot so narava projekta, zahteve naročnika, urnik projekta itd.

S perspektive testiranja nekatere metodologije zahtevajo testiranje vhodnih podatkov v zgodnjem razvojnem življenjskem ciklu, druge pa počakajo, da je pripravljen delujoč model sistema.

Kako nastaviti metodologije preskušanja programske opreme?

Metodologije preskušanja programske opreme ne bi smeli postavljati zgolj zaradi preskušanja programske kode. Upoštevati je treba celotno sliko in glavni cilj projekta mora biti zadovoljen z metodologijo testiranja.

Načrtovanje

Realistično razporejanje je ključno za izvajanje uspešne metodologije testiranja, urnik pa mora ustrezati potrebam vsakega člana ekipe.

Določeni rezultati

Da bi bili vsi člani ekipe na isti strani, je treba zagotoviti natančno določene rezultate. Rezultati bi morali vsebovati neposredno vsebino brez dvoumnosti.

Preskusni pristop

Ko je razporejanje končano in so na voljo določeni rezultati, mora biti preskusna skupina sposobna oblikovati pravi preskusni pristop. Opredelitveni dokumenti in sestanki razvijalcev naj nakažejo ekipi najboljši preskusni pristop, ki ga je mogoče uporabiti za projekt.

Poročanje

Preglednega poročanja je zelo težko doseči, vendar ta korak določa učinkovitost preskusnega pristopa, uporabljenega v projektu.