what is system integration testing
Što je ispitivanje integracije sustava?
Testiranje integracije sustava (SIT) sveukupno je ispitivanje cijelog sustava koji se sastoji od mnogih podsustava. Glavni cilj SIT-a je osigurati da sve ovisnosti softverskih modula funkcioniraju pravilno i da se očuva integritet podataka između različitih modula cijelog sustava.
SUT (sustav koji se testira) može se sastojati od hardvera, baze podataka, softvera, kombinacije hardvera i softvera ili sustava koji zahtijeva ljudsku interakciju (HITL - Human in Loop Testing).
Iz konteksta softverskog inženjerstva i testiranja softvera, SIT se može smatrati postupkom testiranja koji provjerava istovremenu pojavu softverskog sustava s drugima.
SIT ima preduvjet u kojem je više temeljnih integriranih sustava već prošlo i prošlo testiranje sustava. SIT zatim testira potrebne interakcije između ovih sustava u cjelini. Isporuke SIT-a prosljeđuju se UAT-u (ispitivanje prihvaćanja korisnika).
Što ćete naučiti:
- Potreba testa integracije sustava
- Granularnost SIT-a
- Kako izvršiti testiranje integracije sustava?
- Testiranje sustava vs Testiranje integracije sustava
- Testiranje integracije sustava protiv testiranja prihvaćanja korisnika
- Primjer SIT
- SIT tehnike
- Zaključak
- Preporučena literatura
Potreba testa integracije sustava
Glavna funkcija SIT-a je ispitivanje ovisnosti između različitih komponenti sustava, pa je stoga regresijsko testiranje važan dio SIT-a.
Za suradničke projekte, SIT je dio STLC-a (životnog ciklusa testiranja softvera). Općenito, davatelj softvera provodi krug prije SIT-a prije nego što kupac pokrene vlastite SIT test slučajeve.
U većini organizacija koje rade na IT projektima po modelu Agile sprint, QA tim provodi krug SIT-a prije svakog izdanja. Otkriveni nedostaci u SIT-u šalju se natrag razvojnom timu i oni rade na popravcima.
Izdanje MVP-a (minimalno održivog proizvoda) iz sprinta ide samo kad prođe kroz SIT.
SIT je potreban za razotkrivanje kvarova koji se javljaju kada se dogodi interakcija između integriranih podsustava.
U sustavu se koristi nekoliko komponenata i one se ne mogu pojedinačno testirati. Čak i ako se jedinica pojedinačno testira, tada također postoji mogućnost da ne uspije kada se kombinira u sustavu, jer postoje mnogi problemi koji se javljaju kada podsustavi međusobno komuniciraju.
Stoga je SIT itekako potreban za otkrivanje i ispravljanje kvarova prije postavljanja sustava na kraj korisnika. SIT otkriva nedostatke u ranoj fazi i na taj način štedi vrijeme i troškove kasnijeg popravljanja. Također vam pomaže da dobijete ranije povratne informacije o prihvatljivosti modula.
Granularnost SIT-a
SIT se može provoditi na tri različite razine granulacije:
(i) Ispitivanje unutar sustava: Ovo je niska razina integracijskog testiranja koje za cilj ima spajanje modula za izgradnju jedinstvenog sustava.
(ii) Međusistemsko ispitivanje: Ovo je ispitivanje na visokoj razini kojem je potrebno međusobno povezivanje neovisno testiranih sustava.
(iii) Isparivanje u paru: Ovdje se istodobno ispituju samo dva međusobno povezana podsustava u cijelom sustavu. Ovo ima za cilj osigurati da dva podsustava mogu dobro funkcionirati kada se kombiniraju zajedno, pretpostavljajući da drugi podsustavi već dobro rade.
Kako izvršiti testiranje integracije sustava?
Najjednostavniji način izvođenja SIT-a je metodom upravljanom podacima. Zahtijeva minimalnu upotrebu alata za testiranje softvera.
kako pisati automatizirane test slučajeve
Prvo se između komponenata sustava događa razmjena podataka (uvoz i izvoz podataka), a zatim se ispituje ponašanje svakog podatkovnog polja u pojedinačnom sloju.
Jednom kada se softver integrira, postoje tri glavna stanja protoka podataka kako je spomenuto u nastavku:
# 1) Stanje podataka unutar sloja integracije
Integracijski sloj djeluje kao sučelje između uvoza i izvoza podataka. Izvođenje SIT-a na ovom sloju zahtijeva neko osnovno znanje o određenoj tehnologiji poput sheme (XSD), XML, WSDL, DTD i EDI.
Izvedba razmjene podataka može se ispitati na ovom sloju kroz sljedeće korake:
- Provjerite svojstva podataka u ovom sloju u odnosu na BRD / FRD / TRD (dokument poslovnog zahtjeva / dokument funkcionalnih zahtjeva / dokument tehničkih zahtjeva).
- Unakrsna provjera zahtjeva za web uslugom pomoću XSD i WSDL.
- Pokrenite neka jedinična ispitivanja i provjerite preslikavanje podataka i zahtjeve.
- Pregledajte zapisnike međuopreme.
# 2) Stanje podataka u sloju baze podataka
Izvođenje SIT-a na ovom sloju zahtijeva osnovno znanje SQL-a i pohranjenih procedura.
Izvedba razmjene podataka na ovom sloju može se ispitati kroz sljedeće korake:
- Provjerite jesu li svi podaci iz integracijskog sloja uspješno dosegnuti na sloju baze podataka i jesu li predani.
- Provjerite svojstva tablice i stupca u odnosu na BRD / FRD / TRD.
- Potvrdite ograničenja i pravila za provjeru valjanosti podataka koja se primjenjuju u bazi podataka prema poslovnim specifikacijama.
- Provjerite pohranjene procedure za bilo kakvu obradu podataka.
- Pregledajte zapisnike poslužitelja.
# 3) Stanje podataka u sloju aplikacije
SIT se može izvesti na ovom sloju kroz sljedeće korake:
- Provjerite jesu li sva potrebna polja vidljiva u korisničkom sučelju.
- Izvršite neke pozitivne i negativne test slučajeve i provjerite svojstva podataka.
Bilješka: Može biti puno kombinacija koje odgovaraju uvozu i izvozu podataka. Morat ćete izvršiti SIT za najbolje kombinacije s obzirom na dostupno vrijeme.
Testiranje sustava vs Testiranje integracije sustava
Razlike između testiranja sustava i SIT-a:
SIT (ispitivanje integracije sustava) | Ispitivanje sustava |
---|---|
SIT se uglavnom radi kako bi se provjerilo kako pojedini moduli međusobno djeluju kada su integrirani u sustav u cjelini. | Testiranje sustava uglavnom se vrši kako bi se provjerilo radi li cijeli sustav prema očekivanjima s obzirom na navedene zahtjeve. |
Provodi se nakon jediničnog testiranja i provest će se svaki put kad se novi modul doda u sustav. | Provodi se na završnoj razini, tj. Nakon završetka integracijskog testiranja i neposredno prije isporuke sustava za UAT. |
To je testiranje na niskoj razini. | To je ispitivanje na visokoj razini. |
Primjeri SIT-a usredotočeni su na sučelje između komponenata sustava. | Test slučajevi, u ovom slučaju, usredotočeni su na simulaciju scenarija iz stvarnog života. |
Testiranje integracije sustava protiv testiranja prihvaćanja korisnika
Evo razlike između SIT i UAT:
SIT (ispitivanje integracije sustava) | UAT (ispitivanje prihvaćenosti korisnika) |
---|---|
Ovo ispitivanje je iz perspektive povezivanja između modula. | Ovo testiranje je iz perspektive korisničkih zahtjeva. |
SIT rade programeri i testeri. | UAT čine kupci i krajnji korisnici. |
Gotovo nakon jediničnog testiranja i prije testiranja sustava. | Ovo je zadnja razina testiranja i provodi se nakon testiranja sustava. |
Općenito, problemi pronađeni u SIT-u odnosili bi se na protok podataka, nadzor protoka itd. | Problemi pronađeni u UAT-u općenito bi bili poput značajki koje ne rade prema korisničkim zahtjevima. |
Slika ispod na razinama testiranja učinila bi vam jasnim protok od Unit testiranja do UAT-a:
ručno testiranje pitanja za intervju za iskusne
Primjer SIT
Pretpostavimo da tvrtka koristi softver za pohranu podataka o klijentu.
Ovaj softver ima dva zaslona u korisničkom sučelju - zaslon 1 i zaslon 2 i ima bazu podataka. Pojedinosti unesene u zaslon 1 i zaslon 2 unose se u bazu podataka. Od sada je tvrtka zadovoljna ovim softverom.
Međutim, nekoliko godina kasnije tvrtka otkriva da softver ne udovoljava zahtjevima te postoji potreba za poboljšanjem. Stoga su razvili zaslon 3 i bazu podataka. Sada je ovaj sustav koji ima zaslon 3 i bazu podataka integriran sa starijim / postojećim softverom.
Sada se ispitivanje provedeno na cijelom sustavu nakon integracije naziva testom integracije sustava. Ovdje se testira suživot novog sustava sa postojećim kako bi se osiguralo da cijeli integrirani sustav dobro funkcionira.
SIT tehnike
Uglavnom postoje 4 pristupa za izradu SIT-a:
- Pristup od vrha prema dolje
- Pristup odozdo prema gore
- Sendvič pristup
- Pristup Velikog praska
Pristup odozgo prema dolje i pristup odozdo prema gore vrsta je inkrementalnih pristupa. Započnimo raspravu prvo pristupom od vrha prema dolje.
# 1) Pristup od vrha prema dolje:
U skladu s tim, testiranje započinje samo najgornjim modulom aplikacije, tj. Korisničkim sučeljem koje nazivamo testnim upravljačkim programom.
Funkcionalnost temeljnih modula simulira se klipovima. Gornji modul jedan je po jedan integriran s klatnom modula niže razine, a kasnije se testira funkcionalnost.
Nakon što je svako ispitivanje završeno, klat se zamjenjuje pravim modulom. Moduli se mogu integrirati ili na širinu ili na dubinu. Test se nastavlja dok se ne izradi cijela aplikacija.
Prednost ovog pristupa je u tome što nisu potrebni upravljački programi, a test slučajevi se mogu odrediti u smislu funkcionalnosti sustava.
Glavni izazov u ovoj vrsti pristupa je ovisnost o dostupnosti funkcionalnosti modula niže razine. U testovima može doći do kašnjenja dok se pravi moduli ne zamijene klinovima. Također je teško pisati klice.
# 2) Pristup odozdo prema gore:
Eliminira ograničenja pristupa od vrha prema dolje.
gdje se danas koristi c ++
U ovoj se metodi prvo sastavljaju moduli najniže razine kako bi se stvorili klasteri. Ti klasteri služe kao podfunkcija aplikacije. Tada se kreira upravljački program za upravljanje ulaznim i izlaznim podacima test slučaja. Nakon toga se testira klaster.
Nakon testiranja klastera, uklanja se pokretački program i klaster se kombinira sa sljedećom gornjom razinom. Taj se postupak nastavlja dok se ne postigne cjelokupna struktura aplikacije.
U ovom pristupu nisu potrebne škrbine. Postaje pojednostavljeno kako se obrada kreće prema gore i smanjuju potrebe za pokretačima. Ovaj pristup je preporučljiv za SIT za objektno orijentirane sustave, sustave u stvarnom vremenu i sustave sa strogim potrebama za izvedbom.
Međutim, ograničenje ovog pristupa najvažniji je podsustav, tj. UI se ispituje na kraju.
# 3) Sendvič pristup:
Ovdje su gore opisani pristupi odozgo prema dolje i odozdo prema gore kombinirani.
Sustav se doživljava kao da ima tri sloja - srednji sloj koji je ciljni sloj, sloj iznad cilja i sloj ispod cilja. Testiranje se vrši u smjerovima i skupima na ciljanom sloju koji je u sredini, a to je prikazano na donjoj slici.
Strategija ispitivanja sendviča
Prednost ovog pristupa je u tome što se gornji i donji sloj sustava mogu paralelno testirati. Međutim, ograničenje ovog pristupa je u tome što ne iscrpno testira pojedinačne podsustave prije integracije.
Da bismo uklonili ovo ograničenje, izmijenili smo sendvič ispitivanje u kojem se paralelno testira integracija gornjeg, srednjeg i donjeg sloja pomoću klinova i pokretača.
# 4) Pristup velikom prasku:
U ovom se pristupu integracija vrši nakon što su svi moduli aplikacije potpuno spremni. Testiranje se vrši nakon integracije svih modula kako bi se provjerilo radi li integrirani sustav ili ne.
Izazovno je pronaći glavni uzrok problema u ovom pristupu jer je sve odjednom integrirano za razliku od inkrementalnog testiranja. Ovaj se pristup općenito usvaja kad je potreban samo jedan krug SIT-a.
Zaključak
U ovom smo članku saznali što je ispitivanje integracije sustava (SIT) i zašto je važno to provesti.
Razumjeli smo osnovne pojmove, tehnike, pristupe i metode uključene u provođenje SIT-a. Također smo prošetali po tome kako se SIT razlikuje od UAT-a i testiranja sustava.
Nadam se da ste uživali u ovom izvrsnom članku !!
Preporučena literatura
- Što je ispitivanje komponenata ili ispitivanje modula (naučite na primjerima)
- Što je usporedno testiranje (naučite na primjerima)
- Što je integracijsko testiranje (Vodič s primjerom integracijskog testiranja)
- Najbolji alati za testiranje softvera 2021. [Alati za automatizaciju ispitivanja kvalitete]
- Razlike između jedinstvenog testiranja, integracijskog ispitivanja i funkcionalnog ispitivanja
- Funkcionalno ispitivanje vs nefunkcionalno testiranje
- Integracija selena s JMeterom
- Spock za integraciju i funkcionalna ispitivanja selenom