Home

testdekning

Testdekning, eller kodedekning, refererer til i hvilken grad koden i et program blir kjørt av et testsett. Hovedmålet er å synliggjøre hvilke deler av koden som ikke dekkes av tester, slik at man kan forbedre testene og oppdage døde eller utestede områder av logikken. Dekningen måles vanligvis med ulike metrikker som beskriver hvilke deler av programmet som blir utført under kjøring av testene.

Vanlige metrikker inkluderer statment coverage (dekning av kodeinstruksjoner), branch coverage (dekning av beslutningspunkter som if og

Testdekning brukes for å vurdere og forbedre kvaliteten på testene, identifisere dead code og prioritere hvilke

Det er viktig å forstå at høy dekning ikke garanterer frihet fra feil. Det er mulig å

switch),
og
path
coverage
(dekning
av
forskjellige
kjørebaner
gjennom
koden).
Mer
avanserte
mål
kan
være
tilstand-
eller
betingelsesdekning,
og
i
sikkerhetskritiske
systemer
MC/DC.
Mange
verktøy
viser
også
linjedekning
og
funksjonell
dekning.
Verktøy
og
rammeverk
for
dekning
finnes
for
flere
språk
og
integreres
gjerne
i
bygg-
og
CI-prosesser.
deler
av
systemet
som
trenger
flere
tester.
Dekningsrapporter
bidrar
til
å
dokumentere
fremdrift,
og
kan
være
en
del
av
kvalitetsmål
og
regnskapsføring
i
utviklingsprosesser.
ha
mange
tester
som
dekker
koden
uten
å
teste
meningsfull
atferd
eller
å
overfokusere
på
oppnåelse
av
tall.
For
å
forbedre
testkvaliteten
bør
dekning
kombineres
med
nøye
utformede
tester
av
kanttilfeller,
bruk
av
mutasjons-testing
for
å
vurdere
testens
styrke,
og
andre
teknikker
som
egenskapstestning
og
systematiske
grenseverdier.