what is thread testing software testing
Ta vadnica razlaga, kaj je testiranje niti, kdaj in kako ga izvesti, vrste testiranja na osnovi niti in izzivi:
Preizkušanje niti je tehnika preizkušanja programske opreme, ki se uporablja za preizkušanje aplikacij, ki temeljijo na odjemalskem strežniku.
Testiranje na osnovi niti je treba izvesti v začetnih fazah integracijskega testiranja, tako da je mogoče ključne funkcije preizkusiti / preveriti za določeno nalogo / program ali nit.
Kaj se boste naučili:
- Zakaj testiranje niti
- Kdaj in kako se izvaja testiranje niti
- Vrste testiranja na osnovi niti
- Razlika med nitjo in procesi
- Razlika med testiranjem na osnovi niti na osnovi uporabnikov
- Zaključek
Zakaj testiranje niti
Ko so komponente integrirane, je treba preveriti, ali bo sistem deloval po pričakovanjih ali ne, in vse transakcije bi se zgodile v skladu z zahtevo ali ne. Torej testiranje, ki temelji na niti, prihaja na preizkus istega.
To testiranje se izvede tako, da se niti postopoma integrirajo na vseh ravneh, začenši od podsistema do celotnega sistema, torej celotnega sistema. Vse sistemske dejavnosti se premikajo naprej samo z nitmi.
Definicija niti pomaga razdeljevati podrobnosti o funkcionalnem ozadju in izvedbi niti med razvijalci in razvijalci preskuševalcem.
O nitih
Nit je tok nadzora v procesu. To je najmanjša naloga sistema, ki jo je mogoče zagnati.
aplikacija za prosti čas za android
Primer
Spletni brskalnik ima lahko eno ali več niti, ki se izvajajo. ena nit za prikaz slik in besedila in druga nit za pridobivanje podatkov. V nekaterih primerih mora biti za prijavo v vse postopke potrebna ena sama vloga.
Ustvarjanje večnitov je najboljša rešitev za isto, sicer bo odjemalec na strežnik poslal več zahtev in potreben bo čas, da jih potrdite eno za drugo. Multi-thread bo pomagal hkrati odgovoriti na zahteve.
Kdaj in kako se izvaja testiranje niti
To je treba izvesti v začetni fazi preskusa sistemske integracije.
Integracijsko testiranje se izvede z načrtovanim povezovanjem različnih modulov. Načrt integracije se upošteva za isti, ki določa vrstni red integracije modulov za izdelavo celotnega sistema.
Spodaj so navedene tehnike za izvajanje integracijskega testiranja:
- Pristop Big Bang
- Pristop od zgoraj navzdol
- Pristop od spodaj navzgor
- Mešani pristop
Oglejmo si vsako tehniko podrobno.
# 1) Pristop velikega poka
Pristop velikega poka se uporablja samo za majhne sisteme, saj so vsi moduli integrirani in preizkušeni samo v enem zamahu.
Vsako težavo, ki jo najdemo med tem pristopom, je težko lokalizirati, saj je lahko iz katerega koli integriranega modula. Zato so v tem pristopu odpravljene težave z odpravljanjem napak zelo drage.
# 2) Pristop od zgoraj navzdol
Pristop od zgoraj navzdol se izvede z uporabo klinov, tj. Ko je modul najvišje ravni preizkušen, se neposredne podprograme integrirajo in preizkusijo.
Stubs so programi, ki simulirajo učinek rutin na nižji ravni in jih pokličejo preizkušene rutine. Testiranje niti uporablja pristop od zgoraj navzdol.
# 3) Pristop od spodaj navzgor
Pri pristopu od spodaj navzgor se vsi podsistemi testirajo posamično, nato pa se preskusi celoten sistem. Razlog za ločeno testiranje vseh podsistemov je preizkus vmesnika med vsemi moduli, ki so del podsistema.
Za to tehniko so potrebni testni gonilniki, tj. Program, ki pokliče druge module in nudi enak izhod kot dejanski izdelek.
# 4) Mešano integracijsko testiranje
Ta tehnika je kombinacija pristopov od zgoraj navzdol in od spodaj navzgor. Zato se imenuje mešano integracijsko testiranje.
Ključne točke za izvajanje testiranja na osnovi niti
- Med izvajanjem testiranja niti so niti ali majhne funkcije integrirane in preizkušene. Opravljeno testiranje je postopno testiranje na ravni podsistema in nato kot celoten sistem.
- V sami začetni fazi preskuševalci integracije dobijo dobro idejo in znanje, kaj še preizkusiti.
- Preizkuševalci integracije morajo uporabljati in izvajati pozitivne in negativne scenarije samo znotraj meja niti. Odločiti se morajo za pristop testiranja niti, ki ga bodo upoštevali, da bodo zajeli tudi izjemne primere in mejne primere.
- Definicija niti, ki jo razvijalec posreduje preizkuševalcu, pomaga preizkusiti nit ustrezno preizkuševalcem integratorja. V postopku pregleda niti lahko odgovorite na vse nadaljnje informacije, ki jih zahteva tester.
- Procesi niti delujejo za integracijske procese in ne za končni razvojni proces.
- Če želite preizkusiti funkcionalnost več niti, pustite, da so hkrati aktivni več primerkov aplikacije ali programa, ki ga je treba preizkusiti.
- Zaženite program z več nitmi na drugi strojni opremi.
- Testiranje niti je oblika testiranja sej, pri katerem so seje sestavljene iz niti. Ni nujno, da je oblikovana nit seja.
Vrste testiranja na osnovi niti
Izvajata se dve vrsti preskusov na osnovi niti:
- Preskušanje ene niti
- Testiranje z več nitmi
# 1) Preskušanje ene niti
Preskušanje ene niti testira eno transakcijo naenkrat. Čakalni čas, da odjemalec dobi odgovor na svojo zahtevo, je lahko nekoliko daljši, saj bo lahko naenkrat vročil ali odgovoril eni stranki.
To preskušanje pomaga preizkuševalcu, da razume in preizkusi logiko programa ali zapisane kode.
# 2) Preskušanje več niti
Testiranje z več nitmi hkrati preskuša več aktivnih transakcij. V tem primeru se za zahteve odjemalca ustvarijo ločene niti. Vsakič, ko je podana zahteva, se storitev ustvari nit ali odgovori nanjo.
Transakcija, ki je dobro delovala pri preskušanju z eno nitjo, lahko med preskušanjem v večnitnih delih ne uspe, prav tako pa lahko moti druge niti in funkcije ter ustavi njihovo delovanje po pričakovanjih.
Je pristop z več nitmi boljši od pristopa z eno nitjo?
Večnitne aplikacije so boljše od enonitnih, saj izboljšajo učinkovitost aplikacije. Večnitnost omogoča več virov za istočasno obdelavo vprašanja / zahteve.
Izzivi pri testiranju na osnovi niti
Med izvajanjem testiranja na osnovi niti se preizkuševalnik sooča z več izzivi, ki vplivajo na zmogljivost, čas in stroške testiranja.
implementacija algoritma najkrajše poti dijkstra v javi
- Pisanje testnih primerov za večnitne kode je izziv.
- Ko se testiranje več niti izvaja na različni strojni opremi, se ta razlikuje glede na velikost, kapaciteto shranjevanja, pomnilnik, težave itd.
- Scenariji preskušanja tako ene niti več niti so različni.
- Pri testiranju z več nitmi je treba programirati ponovljive preskuse za enote.
Prednosti / slabosti večnitnega navoja
Večnitnost ima tako številne prednosti kot tudi slabosti. Ker preizkuševalec, ki pozna isto, jim pomaga preizkusiti in ustrezno prekiniti postopek testiranja.
Prednosti
- Večnitnost poveča odzivnost uporabnika. Aplikacija lahko pusti program, tudi če je del aplikacije blokiran.
- Skupna raba virov je še ena prednost, saj niti delijo vire procesa, s katerim so povezani ali jim pripadajo.
- Ustvarjanje niti je ekonomično, saj si deli vire, ki jim pripadajo.
Slabosti
- Kompleksen postopek testiranja
- Rezultati so zelo nepredvidljivi.
- Pisanje programa je težje.
- Pojav mrtve točke.
Kaj je mrtva točka
Ko je večnitni postopek končan, nit preide v stanje čakanja, če vir ni na voljo.
Čakalno stanje se za nit morda ne bo spremenilo, ker zahtevani vir imajo druge čakalne niti. Ko pride do take situacije, ki se imenuje Deadlock.
Razlika med nitjo in procesi
Razumejmo razlike med nitjo in procesi:
S. Št | Navoj | Proces |
---|---|---|
7. | Niti ni mogoče več deliti. | Procesi imajo lahko več niti. |
1. | Nit je lahek postopek. | Postopek je težak postopek. |
dva | Če se nit strežnika blokira, lahko zažene drugo nit iste naloge in dokonča postopek. | Če se strežniški proces blokira, se drugi procesi ne morejo izvajati, dokler se blokirani strežniški proces ne blokira. |
3. | Niti se ne izolirajo, temveč si delijo pomnilnik. | Postopek je osamljen. |
4. | Ustvarjanje niti, preklapljanje konteksta, zaključevanje traja manj časa v niti. | Ustvarjanje niti, preklapljanje konteksta, zaključevanje traja več časa v procesih. |
5. | Nit se nanaša na določeno nalogo procesa. | Proces se nanaša na izvajanje katerega koli programa. |
6. | Izkoriščenih virov je v nitki zelo malo. | Virov, porabljenih v procesih, je več. |
Razlika med testiranjem na osnovi niti na osnovi uporabnikov
Št. | Testiranje na osnovi niti | Testiranje na podlagi uporabe |
---|---|---|
1. | Niti se integrirajo in preizkušajo posamično. | Testiranje se začne z razredi, ki niso odvisni drug od drugega, torej so neodvisni. |
dva | Regresijsko testiranje se izvede, da se zagotovi, da nič ne vpliva. | Ko se preskusi neodvisni razredi, se preizkusijo odvisni razredi. Odvisniki so tisti, ki so odvisni od samostojnih razredov. Ta serija se nadaljuje do izdelave celotnega sistema. |
3. | Testiranje na osnovi niti vključuje razrede, ki so bistveni za potrditev vnosa ali dogodka sistema. | Testiranje na osnovi uporabe vključuje razrede, ki so bistveni za odziv ali potrditev primera uporabe. |
Pogosto zastavljena vprašanja
V # 1) Kaj je testiranje niti?
Odgovor: Testiranje na osnovi niti je metodologija, ki se izvaja v zgodnji fazi integracijskega testiranja. Niti ali programi se integrirajo in postopoma preizkušajo v podsistem in nato kot celoten sistem.
V # 2) Katero testiranje opravimo najprej?
Odgovorite : Običajno se najprej opravi testiranje od spodaj, nato pa od zgoraj navzdol.
V # 3) Kaj je testiranje od zgoraj navzdol?
Odgovor: Od zgoraj navzdol je tehnika integracijskega testiranja, pri kateri se testiranje izvaja s pomočjo klinov, tj. Ko komponente nižje stopnje še niso pripravljene za testiranje integracije, se ustvarijo škrbine (začasni moduli), ki dobijo enak izhod kot v primeru dejanskih modulov.
Zaključek
Preizkušanje integracije na osnovi niti ima pomembno vlogo pri preizkušanju glavnih funkcionalnosti ali določene naloge ali niti. Ta metodologija je najboljša za odjemalsko strežniško arhitekturo.
Med preskušanjem niti se mora preizkuševalec soočiti s številnimi izzivi, vendar ima tudi številne prednosti, ki omogočajo enostavno in zanesljivo izvedbo. Preizkuševalcem je omogočil, da preizkusijo vse transakcije in preverijo, ali deluje po pričakovanjih in v skladu z zahtevo.
Nemogoče je preizkusiti vse transakcije / dogodke za dokončanje preizkusa niti, zaradi česar je razdeljen na enojne in večnitne vrste.
Priporočeno branje
- Izbira preizkušanja programske opreme kot vaše kariere
- Nekaj zanimivih vprašanj za preskušanje programske opreme
- Je preizkušanje programske opreme čustveno opravilo?
- Java Synchronized: Kaj je sinhronizacija niti v Javi
- Java niti z metodami in življenjskim ciklom
- Večnitnost v jeziku C ++ z primeri
- Večnitnost v Javi - Vadnica s primeri
- Thread.Sleep () - metoda spanja Thread () v Javi s primeri