JUnit [JUnit Homepage, 2010] ist ein Testframework, das den Software-Entwickler bei der Erstellung von Tests unterstützt und eine Möglichkeit zur automatisierten Test-Durchführung bereitstellt. Der Name „JUnit“ suggeriert, dass das Framework in erster Linie der Erstellung von Unit-Tests dient. Dennoch ist es auch möglich Integrationstests mit JUnit zu erstellen und durchführen zu lassen.
Neben JUnit existiert mit TestNG [TestNG Homepage, 2010] ein weiteres Testframework, das viele Parallelen zu JUnit aufweist.
Der Ablauf bei der Durchführung von Unit-Tests ist stets identisch. Die folgende Grafik beschreibt diesen Ablauf.
Bei der Durchführung eines automatisierten Tests werden die drei
Phasen Setup, Test und Teardown durchlaufen. Im konkreten Beispiel von
JUnit3 bedeutet dies, dass zunächst die
setUp
-Methode, dann eine
test
-Methode und abschließend die
tearDown
-Methode der Testklasse aufgerufen
wird. In anderen Testframeworks kann dieser Ablauf flexibler
festgelegt werden, die drei Phasen werden jedoch auch dort
eingehalten.
Die Setup-Phase erzeugt die Vorbedingungen, die der Test für die Ausführung benötigt. In der Test-Phase werden die zu testenden Funktionen ausgeführt. Nach der Ausführung wird die Teardown-Phase durchlaufen, um nicht länger benötigte Ressourcen wieder freizugeben.