JUnit-Tests schreiben und ausführen

In diesem Abschnitt verwenden Sie das Testgerüst JUnit, um Tests zu schreiben und auszuführen. Eine Einführung in JUnit können Sie im Handbuch JUnit Cookbook nachlesen.

Tests schreiben

Erstellen Sie ein Projekt namens "JUnitTest". Jetzt können Sie Ihren ersten Test schreiben. Sie implementieren den Test in einer Unterklasse von TestCase. Hierzu können Sie entweder den Standardassistenten für Klassen oder den speziellen Assistenten Testcase verwenden:

  1. Öffnen Sie den Assistenten 'Neu' (Datei > Neu > JUnit-Testcase).
  2. Ein Dialog wird geöffnent, der Sie auffordert die JUnit-Bibliothek dem Klassenpfad hinzuzufügen. Wählen Sie Ja aus.
  3. Geben Sie den Wert TestFailure als Namen Ihrer Testklasse ein:

    Seite 1 des Assistenten für Testcase-Erstellung

  4. Klicken Sie auf Fertig stellen, um die Testklasse zu erstellen.

Fügen Sie eine Testmethode, die fehlschlägt, zur Klasse TestFailure hinzu. Mit Hilfe der Schablone test können Sie eine Testmethode ganz schnell eingeben. Dazu setzen Sie den Cursor in die Klassendeklaration. Geben Sie "test" ein drücken Sie dann die Tasten Strg+Leertaste, um die Unterstützung für Code zu aktivieren. Anschließend wählen Sie die Schablone "test" aus. Ändern Sie den Namen der erstellten Methode in testFailure, und rufen Sie die Methode fail() auf.

public void testFailure() throws Exception {
    fail();
}

Jetzt können Sie Ihren ersten Test ausführen.

Tests ausführen

Um "TestFailure" auszuführen, aktivieren Sie das Dropdown-Menü Ausführen in der Symbolleiste, und wählen Sie die Optionen Ausführen als > JUnit-Test aus. Sie können die Testergebnisse in der Sicht JUnit untersuchen. Diese Sicht zeigt den Fortschritt und den Status der Testausführung an:

Fehlgeschlagener Test

Die Sicht wird bei jedem Starten einer Testausführung in der aktuellen Perspektive angezeigt. Besonders bequem können Sie arbeiten, indem Sie die Sicht "JUnit" als Schnellsicht verankern. Die Sicht "JUnit" enthält zwei Registerkarten: Eine Registerkarte zeigt eine Liste der Fehler an, und die andere Registerkarte zeigt die vollständige Testfolge als Baumstruktur an. Sie können von einem Fehler zur entsprechenden Quelle navigieren, indem Sie im Fehlertrace auf die entsprechende Zeile doppelklicken.

Verankern Sie die Sicht "JUnit" als Schnellsicht, entfernen Sie die Anweisung fail() in der Methode testFailure(), damit der Test weiterläuft, und führen Sie den Test erneut aus. Hierzu können Sie entweder in der Symbolleiste der Sicht auf die Schaltfläche Erneut ausführen doppelklicken oder das Programm erneut ausführen, das durch die Aktivierung des Dropdown-Menüs Ausführen gestartet wurde. Dieses Mal sollte der Test erfolgreich verlaufen. Da der Test erfolgreich ausgeführt wurde, wird die Sicht "JUnit" nicht aufgerufen, sondern der Erfolgsanzeiger wird auf dem Symbol für die Sicht "JUnit" angezeigt, und die Statuszeile gibt das Testergebnis an. Um Sie an die erneute Ausführung Ihrer Tests zu erinnern, wird das Symbol der Sicht immer dann mit einem Stern (*) versehen, wenn Sie den Inhalt des Arbeitsbereichs nach der Ausführung ändern.

Erfolgreicher Test - Ein Test wurde erfolgreich ausgeführt.
Erfolgreicher Test, jedoch Arbeitsbereichsänderung - Ein Test wurde erfolgreich ausgeführt, aber der Arbeitsbereichsinhalt wurde seit dem letzten Testlauf geändert.

Neben der oben beschriebenen Vorgehensweise können Sie einen Testcase auch folgendermaßen ausführen:

Testkonfiguration anpassen

Wenn Sie Parameter übergeben oder die Einstellungen für einen Testlauf anpassen wollen, öffnen Sie den Dialog "Startkonfiguration". Wählen Sie die Option Ausführen... im Dropdown-MenüAusführen der Symbolleiste aus.

JUnit-Startkonfiguration

In diesem Dialog können Sie den auszuführenden Test, seine Argumente, seinen Laufzeitklassenpfad und die Java-Laufzeitumgebung angeben.

Testfehler debuggen

Bei einem Testfehler können Sie das Debug mit den folgenden Schritten vornehmen:

  1. Doppelklicken Sie auf den fehlereintrag auf der Registerkarte 'Fehler' in der Sicht 'JUnit', um die entsprechende Datei im Editor zu öffnen.
  2. Setzen Sie am Anfang der Testmethode einen Unterbrechungspunkt.
  3. Wählen Sie den Testcase aus, und verwenden Sie die Optionen  Debug als >JUnit-Test im Dropdown-Menü Debug.

Eine JUnit-Startkonfiguration ist mit einer Option "keep alive" versehen. Falls Ihre Java-VM die sofortige Codeersetzung unterstützt, können Sie den Code korrigieren und den Test ohne das erneute Starten des gesamten Testlaufs wiederholen. Zur Aktivierung dieser Option wählen Sie das Markierungsfeld JUnit nach einem Testlauf beim Debug weiterhin ausführen in der JUnit-Startkonfiguration aus.

Testfolge erstellen

Mit dem JUnit-Assistenten Testfolge können Sie eine Testfolge erstellen. Sie können die Gruppe der Klassen auswählen, die zu einer Folge gehören sollen.

  1. Öffnen Sie den Assistenten für neue Ressourcen.
  2. Wählen Sie Java > JUnit > JUnit Testprogramm aus, und klicken Sie auf Weiter.
  3. Geben Sie einen Namen für Ihre Testfolgenklasse ein (konventionsgemäß wird "AllTests" verwendet, diese Angabe wird standardmäßig angezeigt).

    Testprogrammassistent

  4. Wählen Sie die Klassen aus, die in der Folge enthalten sein sollen. Gegenwärtig ist nur eine einzige Testklasse vorhanden, aber Sie können später weitere zur Folge hinzufügen.

Mit den folgenden beiden Methoden können Sie Testklassen aus der Testfolge entfernen:

Hinweis: Der Assistent stellt zwei Markierungen (//$JUnit-BEGIN$ und //$JUnit-END$) in die erstellte Testfolgenklasse, mit deren Hilfe vorhandene Testfolgenklassen aktualisiert werden können. Die Bearbeitung des Codes zwischen den Markierungen ist nicht zu empfehlen.