Hopp til innhold

Integrasjonstesting

Fra Wikipedia, den frie encyklopedi

Integrasjonstesting er en form for programvaretesting hvor flere deler av et programvaresystem testes som en gruppe. Integrasjonstesting er dermed tester som kjøres på integrasjonsnivå i motsetning til testing på enhets- eller systemnivå.

Ofte utføres integrasjonstesting for å evaluere om en komponent tilfredsstller funksjonelle krav.[1]

I en strukturert utviklingsprosess gjennomføres integrasjonstesting ved å ta utgangspunkt i modulene som har blitt enhetstestet, gruppere dem i større aggregater, bruke tester definert i en integrasjonstestplan og leverere testresultater som et trinn som fører til systemtesting.[2]

Tilnærming[rediger | rediger kilde]

Noen forskjellige typer integrasjonstesting er big bang, blandet (sandwich), risky-hardest, ovenfra og nedenfra. Andre integrasjonsmønstre[3] er samarbeidsintegrasjon, ryggradsintegrasjon, lagintegrasjon, klient-tjener-integrasjon, distribuerte-tjenester-integrasjon og høyfrekvent integrasjon.

Ved big-bang-testing blir de fleste av de utviklede modulene koblet sammen for å danne et komplett programvaresystem (eller en hoveddel av systemet) og deretter brukt til integrasjonstesting. Denne metoden er svært effektiv for å spare tid i integrasjonstestprosessen. Men hvis testtilfellene og resultatene ikke registreres riktig vil hele integrasjonsprosessen blir mer komplisert, og kan hindre testteamet i å nå målet med integrasjonstestingen.

Ved nedenfra testing testes de laveste komponentene først, og brukes deretter for å lette testingen av komponenter på høyere nivå. Prosessen gjentas inntil komponenten øverst i hierarkiet er testet. Alle lavnivåmoduler, prosedyrer eller funksjoner blir integrert og deretter testet. Etter integrasjonstesting av integrerte moduler på lavere nivå blir påfølgende nivå av moduler satt sammen brukt til integrasjonstesting. Denne tilnærmingen er kun nyttig når alle eller de fleste av modulene på samme utviklingsnivå er klare. Denne metoden gjør det også naturlig å dele inn programvaren i ulike nivåer, og kan gjøre det lettere å rapportere testfremgang i form av en prosentandel.

Ved ovenfra testing testes de øverste integrerte modulene først, og grenen til modulen testes trinnvis til slutten av den relaterte modulen.

Sandwichtesting kombinerer ovenfra og nedenfra testing. En begrensning for denne typen testing er at eventuelle forhold som ikke er oppgitt i spesifiserte integrasjonstester (bortsett fra bekreftelse på utførelse av designelementer) vanligvis ikke blir testet.

Se også[rediger | rediger kilde]

Referanser[rediger | rediger kilde]

  1. ^ ISO/IEC/IEEE International Standard - Systems and software engineering. ISO/IEC/IEEE 24765:2010(E). 
  2. ^ Martyn A Ould & Charles Unwin (ed), Testing in Software Development, BCS (1986), p71. Accessed 31 Oct 2014
  3. ^ Binder, Robert V.: Testing Object-Oriented Systems: Models, Patterns, and Tools. Addison Wesley 1999. ISBN 0-201-80938-9