Što je testiranje paralelnosti u testiranju softvera?
Što je testiranje paralelnosti?
Testiranje istovremenosti definirano je kao tehnika testiranja za otkrivanje nedostataka u aplikaciji kada je više korisnika prijavljeno. Drugim riječima, praćenje učinka dok više korisnika izvodi istu radnju u isto vrijeme. Slika ispod prikazuje istovremeno testiranje
Istodobno testiranje također se naziva više korisnika testiranje. Testiranje konkurentnog programa je izazovnije od testiranja sekvencijalnog programa zbog nedeterminizma i problema sa sinkronizacijom.
Zašto testiranje paralelnosti
- Identificira učinke pristupa istim zapisima baze podataka, modulima ili kodu aplikacije u isto vrijeme.
- Identificira i mjeri razinu blokade, zaključavanja i upotrebe jednonitnog koda i ograničavanja pristupa dijeljenim resursima
Prednosti istovremenog testiranja
- Relativno smanjuje količinu napora potrebnog za testiranje aplikacije ograničavanjem opsega istodobnih interakcija na nekoliko široko korištenih dobro testiranih komponenti.
- Vrijednost enkapsulacije omogućuje analizu ponašanja dijela programa bez pregledavanja cijelog koda ili programa
- Pomaže u poboljšanju pouzdanosti i robusnosti istodobnih programa.
Nedostaci istovremenog testiranja
Nedostaci na koje bi test mogao naići tijekom izvođenja istovremenog testiranja
- Potrebno je testirati na više platformi
- Zahtijeva intenzivnije testove
- Funkcije svoj rezultat ne vraćaju odmah pozivatelju, već se on može isporučiti kasnije putem obavijesti, blokova, funkcija povratnog poziva ili sličnih mehanizama, što otežava testiranje.
- Tijek informacija ili programa ne odražava se u stogu poziva.
- Broj putova izvršenja u sustavu može biti izuzetno velik jer takvi procesi u paralelnom sustavu mogu međusobno komunicirati dok se izvršavaju
- Konkurentni programi imaju veći omjer neuspjeha nego sekvencijski
- Otklanjanje pogrešaka konkurentnih programa
Rezime
Tehnika istodobnog ili konkurentnog testiranja radi se za otkrivanje nedostataka u aplikaciji kada je više korisnika prijavljeno.