Introduksjon til systemintegrasjonstesting (SIT)

Testing av systemintegrasjon er en type testing som gjøres på hele systemet etter at maskinvare- og programvaremodulene til det systemet er integrert. Det gjøres for å validere atferden til systemet og for å sjekke om alle modulene i systemet fungerer hensiktsmessig med hverandre. Det gjøres også for å bevare dataintegriteten mellom modulene i systemet.

System Integration Testing (SIT) utføres etter at undersystemene individuelt har gjennomgått enhetstesting og at testingen er bestått. SIT tester deretter systemet som en helhet, etter at det er integrert. Resultatet av SIT blir deretter gitt videre til User accept testing (UAT).

Fordelene med systemintegrasjonstest

  • SIT hjelper til med å oppdage feil på et tidlig tidspunkt. Manglene som ble funnet under SIT blir sendt tilbake for å fikses av utviklingsteamet. Dette hjelper med å spare tid og kostnadene for å fikse det på et senere tidspunkt, noe som kan være dyrere.
  • SIT hjelper deg med å få en tidlig mening om akseptabiliteten til en modul i systemet.
  • SIT hjelper deg med å avsløre feilene som kan oppstå når integrerte komponenter samhandler.
  • Det er flere moduler i et system, og enhetstesting av alle modulene individuelt tar tid. Selv om hver enhet testes individuelt, er det også en mulighet for at den kan mislykkes når den er integrert som en helhet, da det er mange problemer som stiger når undersystemer interagerer med hverandre.

Dermed er SIT i utgangspunktet pålagt å avdekke og fikse problemene før du sender systemet til brukeren.

Tilnærminger for å utføre SIT

La oss se på de forskjellige tilnærmingene for å utføre SIT, la oss forstå dette en etter en.

1. Opp-ned-tilnærming

Dette er en inkrementell tilnærming, der testingen begynner på den øverste modulen i en applikasjon. Funksjonaliteten til modulene på et lavere nivå simuleres ved hjelp av stubber. Den øverste modulen er integrert med modulene i modulene på de lavere nivåene, én etter én for å teste funksjonalitet. Når hver test er fullført, erstattes den respektive stubben av den virkelige modulen. Denne måten å teste på fortsetter til hele systemet er testet.

Fordel

  • Ingen behov for drivere og systemets funksjonalitet brukes til å spesifisere testfallene.

Ulempe

  • Det er en avhengighet av tilgjengeligheten til funksjonaliteten til modulene på lavere nivå.
  • Det kan være forsinkelse i testingen da de virkelige modulene er erstattet med stubber.
  • Å skrive stubber er vanskelig.

2. Bunn-opp tilnærming

Dette er en inkrementell tilnærming, der først modulene på laveste nivå samles for å danne klynger. Deretter lages en driver for å få innspill og utdata fra test saken. Deretter testes klyngen. Etter at klyngen er testet, fjernes driveren, slik at klyngen kan kombineres med det øvre nivået. Denne måten å teste på fortsetter til hele systemet er testet.

Fordel

  • Stubber er ikke nødvendig i denne tilnærmingen.
  • Testing blir enklere etter hvert som prosessen stiger fordi bruken av drivere reduseres.

Ulempe

  • Den viktigste modulen, dvs. brukergrensesnittet, testes på slutten.

3. Big Bang-tilnærming

I denne tilnærmingen blir modulene til systemet integrert først etter at alle modulene er fullført. Etter integrering utføres testing på hele systemet for å kontrollere at det fungerer.

Fordel

  • Bare en runde med SIT kreves.

Ulempe

  • Det er vanskelig å finne årsaken til en feil.

Prosess med systemintegrasjonstesting

Den vanligste metoden for å utføre SIT er gjennom den datadrevne metoden, ettersom den krever minst bruk av programvaretestingverktøy.

I denne metoden foregår primært en datautveksling, dvs. dataimport og eksport mellom systemmodulene, og deretter blir ytelsen til hvert datafelt i det enkelte lag observert.

Når programvaren er integrert, kan det være tre hovedtilstander for dataflyt:

1. Datastatus når det flyter i integrasjonslaget

Integrasjonslaget fungerer som et grensesnitt mellom dataimport og eksport. Grunnleggende kunnskap om visse skjemateknologier er nødvendig for å utføre SIT på dette laget.

Fremgangsmåte for å utføre SIT for å validere datautvekslingen:

  • Autentiser dataegenskapene i dette laget mot kravspapirene.
  • Valider webtjenesteforespørselen.
  • Kjør noen enhetstester for å bekrefte datakartlegginger og forespørsler.
  • Gjennomgå loggene.

2. Datatilstand når det flyter innenfor databasesjiktet

Grunnleggende kunnskap om SQL er nødvendig for å utføre SIT på dette laget.

Fremgangsmåte for å utføre SIT for å validere datautvekslingen:

  • Kontroller om alle dataene har nådd og er begått fra forrige nivå.
  • Autentiser tabell- og kolonneegenskapene i forhold til kravdokumentene.
  • Kontroller datavalideringsreglene og begrensningene som er brukt i databasen.
  • Kontroller lagrede prosedyrer for data som skal behandles.
  • Gjennomgå loggene.

3. Datatilstand når det flyter innenfor applikasjonssjiktet

Fremgangsmåte for å utføre SIT for å validere datautvekslingen:

  • Sjekk for synligheten av feltene i brukergrensesnittet.
  • Utfør testtilfeller, både positive og negative for å bekrefte dataene.

Eksempel på SIT

For å gjøre SIT litt tydeligere, la oss ta et eksempel på et selskap som bruker programvare for å lagre de ansattes detaljer.

Denne programvaren består av to skjermer i brukergrensesnittet, nemlig navneskjerm og ansattes ID-skjerm, og den har en database kalt database A. Opplysningene som er lagt inn i navneskjerm og ansattes ID-skjerm er lagt inn i databasen A.

Etter noen år krever selskapet ytterligere data fra de ansatte. Dermed kreves en forbedring og de utvikler en adresseskjerm med en annen database, database B. Nå må dette systemet som har adresseskjerm og database B integreres med det eksisterende systemet, og deretter må denne testen gjøres på hele systemet for riktig funksjonalitet kalles SIT.

For å konkludere, SIT er en viktig del av testingen vår, da den gir oss det første inntrykket av hvor bra applikasjonen vår kjører. Det kan gjøres ved hjelp av forskjellige tilnærminger og prosesser, og vi kan bruke det som er egnet for bruken.

Anbefalte artikler

Dette har vært en guide til systemintegrasjonstesting. Her diskuterte vi konsepter, tilnærminger, fordeler og ulemper ved systemintegrasjonstesting. Du kan også gå gjennom andre foreslåtte artikler for å lære mer -

  1. Hva er programvaretesting?
  2. Testing av intervjuspørsmål
  3. Defekte livssyklus i test av programvare
  4. Spørsmål om systemdesignintervju