Što je ispitivanje integracije sustava?
Testiranje integracije sustava definirano je kao vrsta testiranja softvera koja se provodi u integriranom hardverskom i softverskom okruženju radi provjere ponašanja cjelovitog sustava. Testiranje se provodi na cjelovitom, integriranom sustavu kako bi se procijenilo usklađenost sustava s navedenim zahtjevima.
Ispitivanje integracije sustava (SIT) provodi se radi provjere interakcije između modula softverskog sustava. Bavi se provjerom softverskih zahtjeva visoke i niske razine specificiranih u Specifikaciji / podacima softverskih zahtjeva i dokumentu softverskog dizajna.
Također provjerava koegzistenciju softverskog sustava s drugima i testira sučelje između modula softverske aplikacije. U ovoj vrsti testiranja, moduli se prvo testiraju pojedinačno, a zatim kombiniraju kako bi se stvorio sustav.
Primjerice, softverske i / ili hardverske komponente kombiniraju se i progresivno testiraju dok se cijeli sustav ne integrira.
U ovom vodiču naučit ćete-
- Što je ispitivanje integracije sustava?
- Zašto testiranje integracije sustava
- Kako napraviti testiranje integracije sustava
- Kriteriji ulaska i izlaska za integracijsko ispitivanje
- Ispitivanje integracije hardvera i softvera
- Ispitivanje integracije softvera do softvera
- Pristup od vrha prema dolje
- Pristup odozdo prema gore
- Pristup Velikog praska
Zašto testiranje integracije sustava
U softverskom inženjerstvu ispitivanje integracije sustava vrši se jer,
- Pomaže u ranom otkrivanju oštećenja
- Bit će dostupne ranije povratne informacije o prihvatljivosti pojedinog modula
- Zakazivanje popravaka nedostataka fleksibilno je i može se preklapati s razvojem
- Ispravan protok podataka
- Ispravan protok upravljanja
- Ispravno vrijeme
- Ispravno korištenje memorije
- Ispravno sa zahtjevima softvera
Kako napraviti testiranje integracije sustava
To je sustavna tehnika za izgradnju programske strukture tijekom provođenja testova radi otkrivanja pogrešaka povezanih s povezivanjem.
Svi su moduli unaprijed integrirani, a cjelokupni program testiran je u cjelini. No tijekom ovog postupka vjerojatno će se naići na niz pogrešaka.
Ispravljanje takvih pogrešaka je teško, jer je uzroke izolacije komplicirano velikim širenjem cijelog programa. Jednom kada se te pogreške isprave i isprave, pojavit će se nova i postupak se nastavlja u beskonačnoj petlji . Da bi se izbjegla ova situacija, koristi se drugi pristup, Inkrementalna integracija. Više detalja o inkrementalnom pristupu vidjet ćemo kasnije u vodiču.
Postoje neke inkrementalne metode poput integracijskih testova koji se provode na sustavu temeljenom na ciljnom procesoru. Metodologija koja se koristi je ispitivanje crne kutije. Može se koristiti integracija odozdo prema gore ili odozgo prema dolje.
Ispitni slučajevi definirani su samo pomoću visokih softverskih zahtjeva.
Integracija softvera također se može postići velikim dijelom u okruženju domaćina, s tim da se jedinice specifične za ciljno okruženje i dalje simuliraju u hostu. Ponovno će biti potrebni testovi u ciljanom okruženju za potvrdu.
Testovi potvrde na ovoj razini identificirat će probleme specifične za okoliš, poput pogrešaka u dodjeli i odvajanju memorije. Praktičnost provođenja integracije softvera u okruženju domaćina ovisit će o tome koliko postoji specifična funkcionalnost cilja. Za neke ugrađene sustave sprega s ciljanim okruženjem bit će vrlo jaka, što čini nepraktičnim provođenje integracije softvera u okruženju domaćina.
Veliki razvoj softvera podijelit će integraciju softvera na više razina. Niže razine integracije softvera mogu se pretežno temeljiti na domaćinskom okruženju, a kasnije razine integracije softvera postaju ovisnije o ciljanom okruženju.
Napomena: Ako se testira samo softver, tada se to naziva testiranje softverske integracije softvera [SSIT], a ako se testiraju i hardver i softver, tada se naziva testiranje integracije softverskog softvera [HSIT].
Kriteriji ulaska i izlaska za integracijsko ispitivanje
Obično se tijekom izvođenja integracijskog testiranja koristi strategija ETVX (kriteriji za ulazak, zadatak, provjera valjanosti i izlaz).
Kriteriji za prijavu:
- Završetak jediničnog ispitivanja
Ulazi:
- Podaci o softverskim zahtjevima
- Dokument za dizajn softvera
- Plan provjere softvera
- Dokumenti za integraciju softvera
Aktivnosti:
- Na temelju zahtjeva visoke i niske razine stvoriti test slučajeve i postupke
- Kombinirajte izrade modula na niskoj razini koji implementiraju zajedničku funkcionalnost
- Razviti testni uprtač
- Testirajte izradu
- Nakon što prođe test, gradnja se kombinira s ostalim gradnjama i testira dok se sustav ne integrira u cjelinu.
- Ponovno izvršite sve testove na ciljanoj platformi zasnovanoj na procesoru i pribavite rezultate
Kriteriji za izlaz:
- Uspješno dovršeno integriranje softverskog modula na ciljani hardver
- Ispravna izvedba softvera prema navedenim zahtjevima
Izlazi
- Izvješća o integracijskim ispitivanjima
- Slučajevi i postupci za testiranje softvera [SVCP].
Ispitivanje integracije hardverskog softvera
Testiranje integracije hardverskog softvera postupak je testiranja računalnih softverskih komponenata (CSC) na visoku razinu funkcionalnosti u ciljanom hardverskom okruženju. Cilj testiranja integracije hardvera / softvera je testiranje ponašanja razvijenog softvera integriranog na hardversku komponentu.
Ispitivanje integracije hardvera i softvera na temelju zahtjeva
Cilj testiranja integracije hardvera / softvera temeljenog na zahtjevima je osigurati da softver na ciljnom računalu zadovolji zahtjeve visoke razine. Tipične pogreške otkrivene ovom metodom ispitivanja uključuju:
- Pogreške hardverskog / softverskog sučelja
- Kršenja particioniranja softvera.
- Nemogućnost otkrivanja kvarova ugrađenim testom
- Netočan odgovor na hardverske kvarove
- Pogreška zbog sekvenciranja, prijelaznih ulaznih opterećenja i ulaznih prijelaznih snaga
- Petlje povratnih informacija netočno se ponašaju
- Pogrešna ili nepravilna kontrola hardvera za upravljanje memorijom
- Problem prijepora sabirnice podataka
- Neispravan rad mehanizma za provjeru kompatibilnosti i ispravnosti terenskog softvera za učitavanje
Integracija hardverskog softvera bavi se provjerom zahtjeva visoke razine. Sva ispitivanja na ovoj razini provode se na ciljanom hardveru.
- Testiranje crne kutije primarna je metodologija ispitivanja koja se koristi na ovoj razini testiranja.
- Testne slučajeve definirajte samo na temelju zahtjeva visoke razine
- Test se mora izvršiti na standardnom hardveru (na meti)
Stvari koje treba uzeti u obzir prilikom dizajniranja test slučajeva za HW / SW integraciju
- Ispravno prikupljanje svih podataka softverom
- Skaliranje i opseg podataka kako se očekuje od hardvera do softvera
- Ispravan izlaz podataka iz softvera u hardver
- Podaci unutar specifikacija (normalno područje)
- Podaci izvan specifikacija (abnormalno područje)
- Podaci o granicama
- Prekida obradu
- Vrijeme
- Ispravno korištenje memorije (adresiranje, preklapanja itd.)
- Prijelazi države
Napomena: Za testiranje prekida, svi će se prekidi provjeravati neovisno od početnog zahtjeva putem potpunog servisiranja i do završetka. Test slučajevi bit će posebno dizajnirani kako bi se na odgovarajući način testirali prekidi.
Ispitivanje integracije softvera do softvera
To je testiranje računalne softverske komponente koja djeluje unutar glavnog računala
Okoliš, simulirajući čitav sustav [ostale CSC-ove] i funkcionalnost visoke razine.
Fokusira se na ponašanje CSC-a u simuliranom host / target okruženju. Pristup koji se koristi za integraciju softvera može biti inkrementalni pristup (odozgo prema dolje, odozdo prema gore ili kombinacija oba).
Inkrementalni pristup
Inkrementalno testiranje način je integracijskog testiranja. U ovoj vrsti metode testiranja prvo testirate svaki modul softvera pojedinačno, a zatim nastavljate testiranje dodavanjem drugih modula, zatim još jednog i tako dalje.
Inkrementalna integracija kontrast je pristupu velikog praska. Program je konstruiran i testiran u malim segmentima, gdje se pogreške lakše izoliraju i ispravljaju. Vjerojatnije je da će se sučelja u potpunosti testirati i može se primijeniti sustavni pristup testiranju.
Postoje dvije vrste inkrementalnog testiranja
- Pristup odozgo prema dolje
- Pristup odozdo prema gore
Pristup od vrha prema dolje
U ovoj vrsti pristupa, pojedinačno započinje testiranjem samo korisničkog sučelja, s osnovnom funkcionalnošću simuliranom klatima, a zatim se pomičete prema dolje integrirajući donji i donji sloj kao što je prikazano na donjoj slici.
- Počevši od glavnog upravljačkog modula, moduli se integriraju pomicanjem prema dolje kroz hijerarhiju upravljanja
- Podmoduli glavnog upravljačkog modula ugrađeni su u strukturu ili na način da se zahtijeva širina ili dubina.
- Dubinska integracija integrira sve module na glavnom upravljačkom putu strukture kako je prikazano na sljedećem dijagramu:
Proces integracije modula vrši se na sljedeći način:
- Glavni upravljački modul koristi se kao testni pokretač, a klinovi su zamijenjeni za sve module koji su izravno podređeni glavnom upravljačkom modulu.
- Podređeni klinovi zamjenjuju se jedan po jedan stvarnim modulima, ovisno o odabranom pristupu (prvo širina ili prvo dubina).
- Ispitivanja se izvršavaju kako je svaki modul integriran.
- Po završetku svakog skupa testova, drugi se klinac zamjenjuje stvarnim modulom po završetku svakog skupa testova
- Da bi bili sigurni da nove pogreške nisu uvedene, može se izvršiti testiranje regresije.
Proces se nastavlja od koraka 2 dok se ne izgradi cijela programska struktura. Strategija od vrha prema dolje zvuči relativno jednostavno, ali u praksi se javljaju logistički problemi.
Najčešći od ovih problema javljaju se kada je za adekvatno testiranje gornjih razina potrebna obrada na niskim razinama u hijerarhiji.
Stubs zamjenjuju module niske razine na početku testiranja odozgo prema dolje, pa stoga nikakvi značajni podaci ne mogu teći prema gore u strukturi programa.
Ispitivač izazova mogao bi se suočiti sa:
- Odgodite mnoga ispitivanja dok se klinovi ne zamijene stvarnim modulima.
- Razvijte klinove koji izvode ograničene funkcije koje simuliraju stvarni modul.
- Integrirajte softver od dna hijerarhije prema gore.
Napomena: Prvi pristup uzrokuje da izgubimo određenu kontrolu nad korespondencijom između određenih testova i ugradnjom određenih modula. To može rezultirati poteškoćama u utvrđivanju uzroka pogrešaka koje teže kršiti vrlo ograničenu prirodu pristupa od vrha prema dolje.
Drugi je pristup izvediv, ali može dovesti do značajnih troškova, jer klice postaju sve složenije.
Pristup odozdo prema gore
Integracija odozdo prema gore započinje izgradnju i testiranje s modulima na najnižoj razini u strukturi programa. U ovom su procesu moduli integrirani odozdo prema gore.
U ovom pristupu obrada potrebna za module podređene određenoj razini uvijek je dostupna i potreba za klinovima je eliminirana.
Ovaj postupak integracijskog ispitivanja izvodi se u nizu od četiri koraka
- Moduli niske razine kombinirani su u klastere koji izvršavaju određenu softversku podfunkciju.
- Pokretač je napisan za koordinaciju ulaza i izlaza iz test slučaja.
- Klaster ili gradnja su testirani.
- Pogonitelji se uklanjaju, a klasteri se kombiniraju krećući se prema gore u strukturi programa.
Kako se integracija kreće prema gore, potreba za odvojenim lekcijama test vozača. Zapravo, ako su gornje dvije razine programske strukture integrirane odozgo prema dolje, broj pokretača može se znatno smanjiti, a integracija klastera uvelike je pojednostavljena. Integracija slijedi dolje ilustrirani obrazac. Kako se integracija kreće prema gore, potreba za odvojenim lekcijama test vozača.
Napomena: Ako su gornje dvije razine programske strukture integrirane odozgo prema dolje, broj pokretačkih programa može se znatno smanjiti, a integracija gradnji je znatno pojednostavljena.
Pristup Velikog praska
U ovom pristupu, svi moduli nisu integrirani dok i ako svi moduli nisu spremni. Jednom kad su spremni, svi se moduli integriraju i zatim izvršavaju kako bi se znalo rade li svi integrirani moduli ili ne.
U ovom pristupu teško je znati osnovni uzrok neuspjeha zbog integriranja svega odjednom.
Također, bit će velike šanse za pojavu kritičnih bugova u proizvodnom okruženju.
Ovaj se pristup usvaja samo kada se integracijsko testiranje mora provesti odjednom.
Sažetak:
- Integracija se izvodi radi provjere interakcije između modula softverskog sustava. Pomaže u ranom otkrivanju kvara
- Testiranje integracije može se obaviti za hardversko-softversku ili hardversko-hardversku integraciju
- Integracijsko ispitivanje vrši se na dvije metode
- Inkrementalni pristup
- Pristup velikom prasku
- Tijekom izvođenja integracijskog testiranja uglavnom se koristi strategija ETVX (kriteriji za ulazak, zadatak, provjera valjanosti i izlaz).