Enhetstesting er testing av de minste enhetene i et program, dvs. teste at metodene i en klasse implementerer ønsket oppførsel. JUnit er et praktisk rammeverk for å gjøre enhetstesting av Java–klasser. Enkelt sagt består enhetstesting med JUnit, også kalt JUnit-testing, i å lage instanser av klassen som skal testes og prøve ulike sekvenser av metodekall og sjekke om verdiene de returnerer stemmer med "fasiten". La oss ta følgende Counter
-klasse som eksempel.
...
- I dette eksemplet har vi kun testet klassen vår med ett sett test-data og dette er sjelden nok til å finne alle feil. Dersom vi f.eks. hadde instansiert med new Counter(0, 2), så hadde ikke den første feilen blitt oppdaget, siden default-verdien tilfeldigvis var riktig! Derfor er det lurt å teste med sannsynlige, usannsynlige og gjerne tilfeldige verdier.
- Det er vanlig å strukturere koden i mange små test-metoder, som hver tester kun ett krav. I dette tilfellet kunne vi laget to test-metoder, f.eks.
testCounter()
for å teste konstruktøren, ogtestCount()
for å testecount()
-metoden. Ved kjøring vil begge test-metodene bli utført og vi kan avdekke flere feil på en gang. Det vil dessuten ofte være praktisk å skrive private hjelpemetoder for å gjøre test-metodene ryddigere.
...
Les også