Preizkušanje programske opreme
Preizkušanje programske opreme je metoda za preverjanje, ali dejanski programski izdelek ustreza pričakovanim zahtevam, in za zagotovitev, da programski izdelek ne vsebuje napak. Vključuje izvajanje programskih / sistemskih komponent z uporabo ročnih ali avtomatiziranih orodij za oceno ene ali več zanimivih lastnosti. Namen testiranja programske opreme je prepoznati napake, vrzeli ali manjkajoče zahteve v nasprotju z dejanskimi zahtevami.
Nekateri raje rečejo testiranje programske opreme kot testiranje bele in črne skrinjice. Preprosto povedano, testiranje programske opreme pomeni preverjanje preizkusne prijave (AUT). Ta vadnica občinstvu predstavlja programsko opremo za preizkušanje in utemeljuje njen pomen.
V tej vadnici boste izvedeli:
- Kaj je testiranje programske opreme?
- Zakaj je testiranje programske opreme pomembno?
- Kakšne so prednosti testiranja programske opreme?
- Testiranje v programskem inženirstvu
- Vrste preizkušanja programske opreme
- Testiranje strategij v programskem inženirstvu
- Testiranje programov
Zakaj je testiranje programske opreme pomembno?
Testiranje programske opreme je pomembno, ker ga lahko v primeru napake ali napake odkrijemo zgodaj in ga lahko rešimo pred dostavo programskega izdelka. Ustrezno preizkušeni programski izdelek zagotavlja zanesljivost, varnost in visoko zmogljivost, kar nadalje prinaša prihranek časa, stroškovno učinkovitost in zadovoljstvo strank.
Testiranje je pomembno, ker so napake v programski opremi lahko drage ali celo nevarne. Napake v programski opremi lahko povzročijo denarno in človeško izgubo, zgodovina pa je polna takih primerov.
- Aprila 2015 je Bloombergov terminal v Londonu strmoglavil zaradi programske napake, ki je prizadela več kot 300.000 trgovcev na finančnih trgih. Vlado je prisilila, da je odložila prodajo dolga v višini 3 milijarde funtov.
- Nissanovi avtomobili so s trga odpoklicali več kot milijon avtomobilov zaradi okvare programske opreme v senzoričnih detektorjih zračnih blazin. Zaradi te okvare programske opreme so poročali o dveh nesrečah.
- Starbucks je bil zaradi okvare programske opreme v svojem POS sistemu prisiljen zapreti približno 60 odstotkov trgovin v ZDA in Kanadi. V nekem trenutku so v trgovini kavo postregli brezplačno, saj transakcije niso mogli obdelati.
- Nekateri Amazonovi neodvisni trgovci so videli, da se njihova cena izdelka zaradi napake v programski opremi zniža na 1 p. Ostali so jim velike izgube.
- Ranljivost v sistemu Windows 10. Ta napaka uporabnikom omogoča, da pobegnejo iz varnostnih peskovnikov zaradi napake v sistemu win32k.
- Leta 2015 je lovsko letalo F-35 postalo žrtev programske napake, zaradi česar ni moglo pravilno zaznati ciljev.
- China Airlines Airbus A300 je strmoglavil zaradi programske napake 26. aprila 1994 in v živo ubil 264 nedolžnih
- Leta 1985 je kanadski aparat za radioterapijo Therac-25 zaradi napak v programski opremi odpovedal in je bolnikom dobil smrtonosne doze sevanja, pri čemer so tri osebe umrle, tri druge pa so bile hudo ranjene.
- Aprila 1999 je napaka v programski opremi povzročila neuspeh lansiranja vojaškega satelita v višini 1,2 milijarde dolarjev, kar je najcenejša nesreča v zgodovini
- Maja 1996 je programska napaka povzročila, da je bilo na račune 823 strank velike ameriške banke pripisanih 920 milijonov ameriških dolarjev.
Kliknite tukaj, če video ni dostopen
Kakšne so prednosti testiranja programske opreme?
Prednosti uporabe testiranja programske opreme so naslednje:
- Stroškovno učinkovito: To je ena pomembnih prednosti testiranja programske opreme. Pravočasno testiranje katerega koli IT projekta vam pomaga dolgoročno prihraniti denar. V primeru, da so napake, ujete v prejšnji fazi testiranja programske opreme, odpravljene manj.
- Varnost: To je najbolj ranljiva in občutljiva prednost testiranja programske opreme. Ljudje iščejo zaupanja vredne izdelke. Pomaga pri odstranjevanju tveganj in težav prej.
- Kakovost izdelka: To je bistvena zahteva vsakega programskega izdelka. Testiranje zagotavlja, da se kupcem dostavi kakovosten izdelek.
- Zadovoljstvo kupcev: Glavni cilj katerega koli izdelka je zadovoljiti svoje stranke. UI / UX Testiranje zagotavlja najboljšo uporabniško izkušnjo.
Testiranje v programskem inženirstvu
V skladu z ANSI / IEEE 1059 je testiranje v programskem inženirstvu postopek ocenjevanja programskega izdelka, da se ugotovi, ali trenutni programski izdelek izpolnjuje zahtevane pogoje ali ne. Preskusni postopek vključuje oceno značilnosti programskega izdelka glede na zahteve glede manjkajočih zahtev, napak ali napak, varnosti, zanesljivosti in zmogljivosti.
Vrste preizkušanja programske opreme
Običajno je testiranje razvrščeno v tri kategorije.
- Funkcionalno preskušanje
- Nefunkcionalno preskušanje ali preizkušanje zmogljivosti
- Vzdrževanje (regresija in vzdrževanje)
Kategorija testiranja | Vrste preskušanja |
---|---|
Funkcionalno preskušanje |
|
Nefunkcionalno preskušanje |
|
Vzdrževanje |
|
To ni popoln seznam, saj obstaja več kot 150 vrst preskusnih vrst, ki se še vedno dodajajo. Upoštevajte tudi, da vse vrste preskušanj niso veljavne za vse projekte, vendar so odvisne od narave in obsega projekta.
Testiranje strategij v programskem inženirstvu
Tu so pomembne strategije v programskem inženiringu:
Preizkušanje enote: Ta pristop preizkušanja programske opreme sledi programerju za preizkušanje enote programa. Razvijalcem pomaga vedeti, ali posamezna enota kode deluje pravilno ali ne.
Integracijsko testiranje: Osredotoča se na konstrukcijo in oblikovanje programske opreme. Videti morate, da integrirane enote delujejo brez napak ali ne.
Testiranje sistema: pri tej metodi se vaša programska oprema sestavi v celoti in nato preizkusi kot celota. Ta preskusna strategija med drugim preverja funkcionalnost, varnost, prenosljivost.
Testiranje programov
Testiranje programov pri testiranju programske opreme je metoda izvajanja dejanskega programskega programa s ciljem testiranja vedenja programa in iskanja napak. Program se izvaja s podatki o testnih primerih za analizo vedenja programa ali odziva na testne podatke. Dobro testiranje programa je tisto, ki ima velike možnosti za iskanje napak.
Povzetek osnov preizkušanja programske opreme:
- Testiranje programske opreme je opredeljeno kot dejavnost, s katero se preveri, ali dejanski rezultati ustrezajo pričakovanim rezultatom, in zagotovi, da sistemski program ne vsebuje napak.
- Testiranje je pomembno, ker so napake v programski opremi lahko drage ali celo nevarne.
- Razlogi za uporabo testiranja programske opreme so pomembni: stroškovno učinkovita, varnost, kakovost izdelkov in zadovoljstvo strank.
- Običajno je testiranje razvrščeno v tri kategorije: funkcionalno preskušanje, nefunkcionalno preskušanje ali preizkušanje zmogljivosti in vzdrževanje.
- Pomembne strategije v programskem inženirstvu so: enotno testiranje, integracijsko testiranje, preverjanje veljavnosti in sistemsko testiranje.