Programvaretesting

Programvaretesting er en underdisiplin av programvareutvikling, og er en aktivitet som utføres for å evaluere og forbedre kvaliteten til programvare ved å identifisere defekter og problemer.

IEEE definerer programvaretesting til å være dynamisk verifikasjon av oppførselen til et program på et endelig sett av tester utvalgt fra det vanligvis uendelig settet i det kjørbare domenet, målt opp mot forventet oppførsel.

De skråstilte ordene i forrige avsnitt tilsvarer nøkkelbegreper innenfor disiplinen:
Dynamisk: Dette betyr at alltid innebærer å kjøre programmet mot et sett inn-verdier.  Dette inkluderer også tilstanden til systemet som en helhet.
Endelig: Selv i enkle programmer så er det praktisk umulig å teste mot hele settet av mulige inn-verdier.
Utvalgt: Siden man tester på et begrenset sett med inn-verdier, så må disse velges ut for å gi mest mulig verdi til testen.
Forventet: Oppførselen til programmet må sjekkes mot brukerens forventninger, mot spesifikasjonen og mot implisitte krav eller «sunn fornuft».  Å ikke vite hva som forventes av programmet gjør testen verdiløs.

Programvaretesting har utviklet seg fra å være programvareutviklingens stebarn til å bli en integrert del av moderne prosesser.

Se også 
 V-modellen
 Rimelighetstesting
 Funksjonell testing
 Ikke-funksjonell testing

Eksterne lenker
 IEEE Guide to the Software Engineering Body of Knowledge (engelsk)
 The Test Management Guide – A to Z and FAQ Knowledgebase (engelsk) 

Testing
Testing og testmetodikk

kk:Тестілеу