Hva er komponenttesting?
Komponenttesting er definert som en programvaretestetype, der testingen utføres på hver enkelt komponent separat uten å integreres med andre komponenter. Det blir også referert til som modultesting når det blir sett på fra et arkitekturperspektiv. Komponenttesting blir også referert til som Enhetstesting, Programtesting eller Modultesting.
Vanligvis er all programvare som helhet laget av flere komponenter. Komponentnivåtesting handler om å teste disse komponentene individuelt.
Det er en av de hyppigste testtypene for black box som utføres av QA Team.
I henhold til nedenstående diagram vil det være en teststrategi og testplan for komponenttesting. Hvor hver del av programvaren eller applikasjonen blir vurdert individuelt. For hver av denne komponenten vil et testscenario bli definert, som videre bringes ned i et høyt nivå testtilfeller -> detaljerte testtilfeller med lavt nivå med forutsetninger.
Bruk av begrepet " Component Testing " varierer fra domene til domene og organisasjon til organisasjon.
Den vanligste årsaken til ulik oppfatning av komponenttesting er
- Type utvikling Livssyklusmodell valgt
- Kompleksiteten til programvaren eller applikasjonen som testes
- Testing med eller uten isolasjon fra resten av andre komponenter i programvare eller applikasjon.
Som vi vet, har programvaretest livssyklusarkitektur mange test-artefakter (dokumenter laget, brukt under testaktiviteter). Blant mange tester - gjenstander, er det testpolitikken og teststrategien som definerer testtypene, testdybden som skal utføres i et gitt prosjekt.
Hvem gjør komponenttesting
Komponenttesting utføres av testere. 'Unit Testing' utføres av utviklerne der de utfører testing av den enkelte funksjonalitet eller prosedyre. Etter at enhetstesting er utført, er neste testing komponenttesting. Komponenttesting utføres av testerne.
Når skal du utføre komponenttesting
Komponenttesting utføres kort tid etter at enhetstesten er utført av utviklerne og build er utgitt for testteamet. Denne bygningen er referert til som UT-bygg (Unit Testing Build). Den viktigste funksjonaliteten til alle komponentene er testet i denne fasen,
Oppføringskriterier for komponenttesting
- Minimum antall komponenter som skal inkluderes i UT bør utvikles og enhetstestes.
Utgangskriterier for komponenttesting
- Funksjonaliteten til hele komponenten skal fungere bra.
- Det skal ikke være noen kritiske eller høye eller middels alvorlighetsgrads- og prioritetsfeil Feillogg.
Komponenttestingsteknikker
Basert på dybden av testnivåene, kan komponenttesting kategoriseres som
- CTIS - komponenttesting i liten grad
- CTIL - komponenttesting i stort
CTIS - Komponenttesting i små
Komponenttesting kan utføres med eller uten isolasjon av resten av andre komponenter i programvaren eller applikasjonen som testes. Hvis den utføres med isolasjon av en annen komponent, blir den referert til som komponenttesting i små.
Eksempel 1: Tenk på et nettsted som har 5 forskjellige websider, og test hver webside hver for seg, og med isolasjon av andre komponenter blir det referert til som Component testing in Small.
Eksempel 2: Tenk på hjemmesiden til nettstedet guru99.com som har mange komponenter som
Hjem, testing, SAP, web, må lære !, Big Data, live prosjekter, blogg og etc.
Tilsvarende er hvilken som helst programvare laget av mange komponenter, og også vil hver komponent ha sine egne underkomponenter. Å teste hver modul nevnt i eksempel 2 hver for seg uten å vurdere integrasjon med andre komponenter kalles Component Testing in Small.
Klikk på rullegardinmenyen Testing i henhold til snapshowet nedenfor og se forskjellige "underkomponenter" av testkomponenten. Så underkomponentene som vises er manuell testing, SOAPUI, QTP, JUnit, selen, testhåndtering, selen, mobil testing osv.
Merk: Underkomponenten er nevnt med rød uthevet farge i stillbildet nedenfor.
CTIS - Komponenttesting i små
Komponenttesting utført uten isolasjon av andre komponenter i programvaren eller applikasjonen som testes, kalles Component Testing Large.
La oss ta et eksempel for å forstå det på en bedre måte. Anta at det er en applikasjon som består av tre komponenter si komponent A , komponent B, og komponent C .
Utvikleren har utviklet komponenten B og vil at den skal testes. Men for å fullstendig teste komponent B, noen av stolens funksjoner er avhengig av komponent A og komponent C på noen
Funksjonalitetsstrøm: A -> B -> C, noe som betyr at det er en avhengighet til B fra både A & C, i henhold til diagrammet er den kallte funksjonen, og driveren er anropsfunksjonen .
Men komponent A og komponent C er ikke utviklet ennå. I så fall, for å teste komponent B helt, kan vi erstatte komponent A og komponent C med stubbe og drivere etter behov. Så i utgangspunktet blir komponent A & C erstattet av stub & driver's som fungerer som et dummyobjekt til de faktisk er utviklet.
- Stub: En stub kalles fra programvarekomponenten som skal testes, som vist i diagrammet nedenfor 'Stub' kalles av komponent A.
- Driver: En driver kaller komponenten som skal testes, som vist i diagrammet nedenfor 'Komponent B' kalles av Driver.
Eksempel på testtilfeller for komponenttesting
Tenk på to nettsider i henhold til diagrammene nevnt nedenfor. Her er begge websidene relatert til hverandre fra et funksjonalitetsperspektiv.
- Nettside 1 er påloggingsside til demo.guru99.com
Når brukeren skrev inn gyldig bruker-ID og passord i tekstfeltet og klikker på send-knappen, vil websiden navigere til hjemmesiden til Guru99 demo-banknettsted.
- Nettside 2 er hjemmesiden til Guru99.com
Så her er påloggingssiden en komponent, og hjemmesiden er en annen. Nå testes funksjonaliteten til de enkelte sidene hver for seg, og kalles komponenttesting .
Scenarioer for komponenttesting på websiden1 -
- Angi ugyldig bruker-ID og kontroller om det vises en brukervennlig advarsel for sluttbrukeren.
- Skriv inn ugyldig bruker-ID og passord, og klikk på 'reset' og kontroller om dataene som er angitt i tekstfeltene bruker-ID og passord er fjernet.
- Skriv inn gyldig brukernavn og passord og klikk på 'Logg inn' -knappen.
Scenarioer for komponenttesting på nettside2 -
- Bekreft om meldingen "Velkommen til managerside for guru99 bank" vises på hjemmesiden.
- Bekreft om alle koblingene på venstre side av websiden er klikkbare.
- Bekreft om leder-ID-en vises midt på hjemmesiden.
- Bekreft tilstedeværelsen av de tre forskjellige bildene på hjemmesiden i henhold til diagrammet.
Enhetstesting mot komponenttesting
Enhetstesting | Komponenttesting |
---|---|
|
|
|
|
|
|
|
|
Sammendrag:
I programvareutvikling spiller komponenttesting en avgjørende rolle for å finne feilene. Før vi begynner med integrasjonstesting, anbefales det alltid å utføre komponenttesting for å sikre at hver komponent i et program fungerer effektivt.
Integrasjonstesting følges av komponenttesting. Komponenttesting referert også til modultesting i noen referanser.