Sisällysluettelo
- Mitä integraatiotestaus on?
- Miksi integraatiotestaus?
- Mitä ovat tynkät ja ajurit integrointitesteissä?
- Mitkä ovat integraatiotestauksen tyypit/lähestymistavat?
- Kuinka integraatiotestaus tehdään?
- Parhaat työkalut integraatiotestaukseen:
- Vinkkejä integraatiotestaukseen:
- Aiheeseen liittyvät artikkelit
- Suositellut artikkelit
Mitä integraatiotestaus on?
Integraatiotestaus on kuvattu ohjelmistojen testausprosessiksi, jossa useita ohjelmistomoduuleja integroidaan ja testataan loogisesti. Tässä prosessissa useita moduuleja testataan ensin erikseen ja sitten yhtenä integroituna yksikkönä. Koko ryhmä käydään läpi, jotta nähdään, toimiiko integroitu moduuli odotetulla tavalla.
Se on pragmaattinen lähestymistapa ohjelmistokehitykseen, joka vaatii huolellisen prosessin tuotteen kehittämiseksi jatkuvan testauksen ja tarkistamisen kautta. Tämä tehdään asteittain integroimalla sovelluksen moduuleja tai komponentteja.
Tätä testityyppiä sovelletaan ja kootaan testaukseen ja määritellään paikallisesti suoritettavassa integrointitestisuunnitelmassa. Integrointitestit tarjoavat integroivan järjestelmän ja järjestelmän testausta varten. Näiden testien ensisijaisena tavoitteena on testata eri komponenttien välistä vuorovaikutusta.
Integrointitesteillä on valtava merkitys, sillä kaikki komponentit ja moduulit yhdistetään ja testataan. Integraatiotestistä tulee elintärkeä tarve mille tahansa yritykselle, kun se suunnittelee siirtyvänsä uuteen liiketoimintamalliin, uusiin teknologioihin tai jopa uusiin tuotteisiin tai palveluihin. Integrointitestit ovat olennainen osa testaussykliä, jonka avulla testaajat voivat löytää puutteita useiden yksiköiden integroinnin jälkeen.
Meillä on erilaisia testejä, kuten Yksikkötestaus , Järjestelmän testaus , ja Hyväksymistestaus .

Miksi integraatiotestaus?
- Testit ovat luotettavampia ja helpompia eristää viat.
- Nukkeja tai tukkeja ja ohjaimia voidaan käyttää.
- Integraatiotestaus tuo kehittäjään luottamusta.
- Nopeammat koeajot.
- Integraatiotestaus alkaa kehityksen elinkaaren varhaisessa vaiheessa, ja kehittäjät voivat havaita vikoja aikaisemmin kuin myöhään.
- Integrointitestit havaitsevat järjestelmätason virheet, kuten rikkinäisen tietokantamallin ja väärän välimuistin integroinnin.
- Mukavampi testata kehittyvässä ympäristössä.
- Oikean testin luominen antaa tarkan takaisinkytkentämekanismin sekä kehittäjien että testausinsinöörien välille.
- Parempi koodipeitto.
- Mukavampi seurata koodin kattavuutta.
- Suurin osa auttaa rakentamaan reaaliaikaisia käyttötapauksia päästä päähän -testauksen aikana.
Mitä ovat tynkät ja ajurit integrointitesteissä?
Stubit ja ajurit ovat näennäiskoodeja tai valekoodeja, joita käytetään integrointikomponenttien testaamiseen, kun yhtä tai useampaa moduulia ei ole kehitetty ja niitä tarvitaan muiden moduulien testaamiseen. Se on ohjelma, joka tarjoaa kovakoodattuja koodeja, kun tulo hyväksyy moduulin lähdön integrointitestissä.
Yleisesti kutsutaan kutsuohjelmiksi, tyngät ja ajurit ovat toivottavia ylhäältä alas integrointitestien metodologiassa. Sitä vastoin kuljettajat hakevat alhaalta ylös -lähestymistapaa. Stubit ja ohjainten testaajat voivat hyödyntää ja stimuloida niiden moduulien käyttäytymistä, joita ei ole vielä integroitu ohjelmistoon. Lisäksi ne auttavat simuloimaan puuttuvien komponenttien toimintaa.
Mitkä ovat integraatiotestauksen tyypit/lähestymistavat?
Big Bang -integraatiotestaus:
Big bang -integraatiotesti on hyödyllinen lähestymistapa ohjelmistotestaukseen; se varustaa kehittäjät täydellisellä sarjalla integraatiotestejä ohjelmistoilleen, järjestelmilleen ja sovelluksilleen integrointitestien alussa.
Big bang -integraatiotestaus on jatkuvaa testausta, joka tapahtuu ennen kuin järjestelmäsegmentit muodostavat järjestelmän. Se on yksi lupaavimmista lähestymistavoista ohjelmistojen testaus , jossa järjestelmien ja komponenttien jatkuva integrointi johtaa täydellisen järjestelmän tai sovelluksen muodostumiseen.
Edut:
- Hyödyllinen pienille järjestelmille.
- Suurin etu on, että kaikki on valmis ennen integrointitestauksen alkamista.
Haitat:
- Erittäin aikaa vievää
- Vikojen syytä on vaikea jäljittää viivästyneen integroinnin vuoksi.
- Kriittisten vikojen mahdollisuus on suurempi, koska big bang -testauksessa kaikki komponentit testataan yhdessä samanaikaisesti.
- Tuotantoympäristössä on suuri mahdollisuus kriittisten virheiden esiintymiseen.
- Jos vika löytyy, on erittäin vaikeaa irrottaa kaikki moduulit sen perimmäisen syyn selvittämiseksi.
Inkrementaalinen integraatiotestaus
Incremental Integration -testeissä ohjelmoijat integroivat moduulit tyngillä tai ohjaimilla paljastaakseen viat yksitellen. Tässä lähestymistavassa testaus suoritetaan yhdistämällä kaksi tai useampi loogisesti toisiinsa liittyvä moduuli ja sitten testataan sen asianmukainen toiminta. Muut asiaan liittyvät moduulit integroidaan asteittain, ja prosessi jatkuu, kunnes kaikki loogisesti liittyvät moduulit on integroitu ja testattu onnistuneesti. Sitä vastoin big bang on toinen integraatiotestaustekniikka, jossa kaikki moduulit integroidaan yhdeksi laukaukseksi.
Inkrementaalista testausta on kahta tyyppiä.
1. Ylhäältä alas -lähestymistapa:
Ylhäältä alas -integraatiotestaus on lähestymistapa, jossa komponentti luodaan alemmalla tasolla ja integroidaan komponenttiin korkeammalla tasolla. Ylhäältä alas -integrointitestit keskittyvät enemmän komponenttien integrointiin yläreunassa kuin alaosassa. Kehittäjä voi käyttää tynkkiä tähän lähestymistapaan. Tämä lähestymistapa on tarkoitettu monenlaisiin toimiin, kuten tavoitteiden asettamiseen, budjetointiin ja ennustamiseen.
Ylhäältä alas -integraatiotestimenetelmä testaa ensin korkean tason moduuleja ja sitten yhä alemman tason moduuleja. Tämä menetelmä mahdollistaa testien suorittamisen ylhäältä alaspäin seuraamalla ohjausvirtoja ja arkkitehtonisia rakenteita integrointitesteillä ylhäältä alaspäin. Yleisin sovellus on ylhäältä alas -lähestymistapa, jossa käytetään typpejä integrointitesteihin ja testin ulostuloon.
Edut:
- Tämä menetelmä ei vaikuta käyttö- ja ylläpitoresursseihin yhtä vakavasti kuin alhaalta ylös -lähestymistapa.
- Vian paikantaminen on helppoa.
- Varhainen prototyyppi voidaan hankkia helposti.
- Suuret suunnitteluvirheet löydettiin ja korjattiin ensin.
- Ensisijaiset moduulit voidaan testata ensin.
- Tämän lähestymistavan etuna on, että päätökset voidaan tehdä ja toteuttaa erittäin nopeasti.
Haitat:
- Tämä lähestymistapa vaatii monia Stubeja.
- Alemman tason moduulit testataan tehottomasti.
- Tarjoaa rajoitetun kattavuuden ensimmäisissä vaiheissa.
- Kehittäjät saattavat joutua kehittämään mukautettuja sovittimia varhaisessa vaiheessa.
- Toteutuskustannukset ovat todennäköisesti korkeammat.
2. Alhaalta ylös -lähestymistapa:
Alhaalta ylös -lähestymistapa on ylhäältä alas -integrointitestin vastakohta: alimman kerroksen moduulit testataan ja integroidaan ensin ja integroidaan sitten peräkkäin muiden liikkeellä olevien moduulien kanssa.
Alhaalta ylös -integrointitestit alkavat yksikkötesteillä, joita seuraa modulaarinen rakentaminen. Ensin testataan päämoduuli, sitten alimoduuli ja niin edelleen, kunnes se on integroitu.
Testajuri on ajettu ja välittää vastaavat tiedot matalan tason moduulista, ja kun toisen moduulin koodi on valmis, ajuri korvaa varsinaisen moduulin. Alempi moduuli testataan ja ylemmän tason moduulit testataan samalla tavalla kuin top-up integraatiotestissä, mutta eri ajureilla.
Edut:
- Helpompi vian paikantaminen.
- Alhaalta ylös -lähestymistavan noudattamiseen kuluva aika on paljon vähemmän kuin muilla testausmenetelmillä.
- Käyttäjien tietoisuus tuotteesta.
- Automaatio voi korvata monia manuaalisia prosesseja.
- Kustannustehokas.
- Helpommat testihavainnot.
- Edullinen, jos ohjelman alaosassa on suuria puutteita.
Haitat
- Ohjelma kokonaisuudessaan ei ole olemassa ennen kuin viimeinen moduuli on lisätty.
- Varhainen prototyyppi ei ole mahdollinen.
- Alhaalta ylös -strategiaa ohjaa olemassa oleva infrastruktuuri liiketoimintaprosessien sijaan.
- Pakolliset moduulit (ohjelmistoarkkitehtuurin ylimmällä tasolla), jotka ohjaavat sovelluskulkua, testataan viimeisenä, ja ne voivat olla alttiita virheille.
Sandwich-/hybriditestaus
Sandwich Testing on alhaalta ylös - ja ylhäältä alas -lähestymistavan liitto, joten se hyödyntää sekä alhaalta ylös - että ylhäältä alas -lähestymistavan etuja.
Tämän vaiheen aikana testataan liitäntä ja kunkin moduulin välinen tiedonsiirto. Se tunnetaan myös nimellä Hybrid Integration Testing. Muokatut sandwich-testit ovat uskomattoman hyödyllisiä, ja ne auttavat testaajia testaamaan eri järjestelmän komponentteja, kun ne on integroitu.
Edut:
- Sandwich-testausmenetelmä on hyödyllinen laajoissa projekteissa, joissa on osaprojekteja.
- Se mahdollistaa rinnakkaistestauksen.
- Se on aika tehokasta.
- Kehittäjät arvostavat tätä lähestymistapaa, koska ne yhdistävät etuja kaikista asiaan liittyvistä testaus puitteet, auttamalla ammattilaisia hyödyntämään kaikkea, mikä heistä on parasta selkeällä tavalla.
Haitat:
- Sandwich-testaus on melko kallista.
- Sandwich-testausta ei voida käyttää järjestelmissä, joissa on paljon keskinäistä riippuvuutta eri komponenttien/moduulien kanssa.
- Sandwich-testauksessa/hybriditestauksessa tynkien ja ajurien tarve on erittäin suuri.
- Testauksesta voi tulla monimutkaista.
- Vaikea paikantaa vikoja.
- Sekatestaus vaatii korkeita kustannuksia.
- Tämä lähestymistapa ei sovellu pieniin projekteihin.
Kuinka integraatiotestaus tehdään?
Yleensä integrointitestaus tulee yksikkötestauksen jälkeen. Kun kaikki yksittäiset yksiköt on testattu, kehittäjät alkavat yhdistää testattuja moduuleja ja suorittaa integraatiotestauksen. Prosessin päätavoitteena tässä on testata yksiköiden/moduulien välisiä rajapintoja.
- Valmistele malli.
- Valitse testausmenetelmän tyyppi yllä olevasta luettelosta.
- Valitse testitapaukset, ääriviivat ja komentosarjat vastaavasti.
- Ota valitut yksiköt käyttöön yhdessä ja käynnistä integrointitestit.
- Seuraa vikoja ja vikoja tallentaaksesi testien testitulokset.
- Toista yllä olevat kohdat, kunnes koko järjestelmä on testattu.
Prosessin prioriteetin on oltava moduulien välissä integroiduissa liitäntälinkeissä.
Parhaat työkalut integraatiotestaukseen:
VectorCAST/C++ on automatisoitu yksikkö- ja integraatiotestausratkaisu, jota käytetään turvallisuus- ja markkinakriittisten sulautettujen järjestelmien validointiin. Tätä dynaamista testausratkaisua käytetään laajalti teollisuudenaloilla, kuten ilmailutekniikassa, lääkinnällisissä laitteissa, autoteollisuudessa, teollisuuden ohjauksissa, rautateillä ja rahoitussektoreilla.
Citrus on avoimen lähdekoodin kehys, joka voi auttaa kehittäjiä automatisoimaan minkä tahansa viestintäprotokollan tai tietomuodon integraatiotestauksen. Citrus on valintakehys sovelluksesi viestintäintegraatioiden testaamiseen. Jos käytät viestinsiirtoa, kuten HTTP, REST, SOAP tai JMS.
LDRA:n avulla kehittäjät voivat suorittaa yksikkö- ja integrointitestejä isäntä- ja kohdelaitteella. LDRA:n avulla kehittäjät voivat nopeasti ja helposti luoda ja suorittaa testejä yksikkö- ja integrointitasoilla sekä isännässä (erillisellä tai kohdesimulaatiolla) että kohdelaitteistolla.
Nykyään useat yritykset edistävät yrityslähtöistä arkkitehtuuria. Perinteinen integraatiotestausmenetelmä, kuten alhaalta ylös -lähestymistapa, vaatii huomattavia ponnisteluja testidatan luomiseksi. Wipron Smart Integration Test Accelerator (SITA) auttaa kehittäjiä voittamaan nämä haasteet. Tämän kehyksen avulla kehittäjät voivat nopeuttaa testitietojen ja testisuunnittelun luomista.
Rational Integration Tester (RIT) on integraatiotestaustyökalu, joka tunnettiin aiemmin nimellä Green Hat. IBM osti Green Hatin vuonna 2012. IBM:n Rational Integration Testerin avulla kehittäjät voivat saada komentosarjavapaan ympäristön, ja kehitys on mahdollista SOA-viestintätesteihin ja integraatioprojekteihin. Rational Integration Tester estää integraatioongelmia iteratiivisten ja kettereiden kehitysmenetelmien avulla. Työkalu on nyt osa Rational Test Workbenchiä.
Vinkkejä integraatiotestaukseen:
- Suorita integrointitestejä, kunnes löydät ainakin yhden vian.
- Kun olet eristänyt vian, ratkaise se heti lisäämällä tai muokkaamalla koodia.
- Harjoittele integraatiotestausta vasta suoritettuasi yksikkötestauksen oikein.
- Log edistymisesi auttaa; kehittäjät analysoivat vian paremmin ja pitävät kirjaa mahdollisista epäonnistumisen syistä.
- Kirjaaminen auttaa sinua analysoimaan vian ja ylläpitämään kirjaa mahdollisista vian syistä sekä sulkemaan pois muita selityksiä ja rajaamaan todellista syytä.
- Varmista, että testaus- ja kehitysympäristösi vastaavat toisiaan.
- Käytä arvokasta testidataa.
- Käytä yleistä arkistoa virheille ja testeille.