Testdekning i programvaretesting
Hva er testdekning?
Testdekning er definert som en beregning i Software Testing som mรฅler mengden testing utfรธrt av et sett med tester. Det vil inkludere รฅ samle informasjon om hvilke deler av et program som kjรธres nรฅr testpakken kjรธres for รฅ finne ut hvilke grener av betingede setninger som er tatt.
Enkelt sagt er det en teknikk for รฅ sikre at testene dine tester koden din eller hvor mye av koden du trente ved รฅ kjรธre testen.
Hva Testdekning gjรธr?
- Finne omrรฅdet for et krav som ikke er implementert av et sett med testtilfeller
- Hjelper med รฅ lage flere testtilfeller for รฅ รธke dekningen
- Identifisere et kvantitativt mรฅl for testdekning, som er en indirekte metode for kvalitetssjekk
- Identifisere meningslรธse testtilfeller som ikke รธker dekningen
Hvordan kan testdekning oppnรฅs?
- Testdekning kan gjรธres ved รฅ trene statiske vurderingsteknikker som fagfellevurderinger, inspeksjoner og gjennomgang
- Ved รฅ transformere ad-hoc-defektene til kjรธrbare testtilfeller
- Pรฅ kodenivรฅ eller enhetstestnivรฅ kan testdekning oppnรฅs ved รฅ benytte de automatiserte kodedeknings- eller enhetstestdekningsverktรธyene
- Funksjonell testdekning kan gjรธres ved hjelp av riktige teststyringsverktรธy
Fordeler med testdekning i programvareteknikk
- Det kan kvalitetssikre testen
- Det kan hjelpe med รฅ identifisere hvilke deler av koden som faktisk ble berรธrt for utgivelsen eller rettelsen
- Det kan hjelpe รฅ finne stiene i sรธknaden din som ikke ble testet
- Forhindre Defekt lekkasje
- Tid, omfang og kostnader kan holdes under kontroll
- Feilforebygging pรฅ et tidlig stadium av prosjektets livssyklus
- Den kan bestemme alle beslutningspunkter og stier som brukes i applikasjonen, noe som lar deg รธke testdekningen
- Mangler i krav, testtilfeller og mangler pรฅ enhetsnivรฅ og kodenivรฅ kan pรฅ en enkel mรฅte finnes
Hva er de viktigste forskjellene mellom Code Dekning og testdekning?
Code dekning og testdekning er mรฅleteknikker som lar deg vurdere kvaliteten pรฅ sรธknadskoden din.
Her er noen kritiske forskjeller mellom boder med disse dekningsmetodene:
| Parametre | Code Dekning | Test dekning |
|---|---|---|
| Definisjon | Code dekningsbetegnelse som brukes nรฅr applikasjonskode utรธves mens en applikasjon kjรธrer. | Testdekning betyr overordnet testplan. |
| Mรฅl | Code Dekningsmรฅlinger kan hjelpe teamet med รฅ overvรฅke de automatiserte testene sine. | Testdekning gis detaljer om hvilket nivรฅ den skriftlige kodingen av en applikasjon er testet til. |
| subtyper | Code dekning delt inn i undertyper som kontoutskriftsdekning, tilstandsdekning, filialdekning, Toogle-dekning og FSM-dekning. | Ingen undertype av testdekningsmetode. |
Testdekningsformel
For รฅ beregne testdekningen, mรฅ du fรธlge trinnene nedenfor:
Trinn 1) Den totale kodelinjen i programvarekvaliteten du er testing
Trinn 2) Antall linjer med kode som alle testtilfeller utfรธrer for รธyeblikket
Nรฅ mรฅ du finne (X delt pรฅ Y) multiplisert med 100. Resultatet av denne beregningen er testdekningen %.
For eksempel:
Hvis antall linjer med kode i en systemkomponent er 500 og antall linjer utfรธrt pรฅ tvers av alle eksisterende testtilfeller er 50, sรฅ er testdekningen:
(50 / 500) * 100 = 10%
Eksempler pรฅ testdekning
Eksempel 1:
For eksempel, hvis "kniv" er et element du vil teste. Da mรฅ du fokusere pรฅ รฅ sjekke om den skjรฆrer grรธnnsakene eller fruktene nรธyaktig eller ikke. Imidlertid er det andre aspekter รฅ se etter som brukeren skal kunne hรฅndtere det komfortabelt.
Eksempel 2:
For eksempel hvis du vil sjekke notisblokkapplikasjonen. Da er det en nรธdvendighet รฅ sjekke de essensielle funksjonene. Du mรฅ imidlertid dekke andre aspekter ettersom notatblokkapplikasjonen reagerer forventet mens du bruker andre applikasjoner, brukeren forstรฅr bruken av applikasjonen, ikke krasjer nรฅr brukeren prรธver รฅ gjรธre noe uvanlig osv.
Ulemper med testdekning:
- De fleste oppgavene i testdekningen er manuelle da det ikke er noen verktรธy รฅ automatisere. Derfor krever det mye innsats รฅ analysere kravene og lage testcases.
- Testdekning lar deg telle funksjoner og deretter mรฅle mot flere tester. Det er imidlertid alltid rom for skjรธnnsfeil.
