| 
programmers love JUnit
 |  | JUnit wurde von E. Gamma und K. Beck (zwei Design Pattern Koryphäen)
entwickelt und kann von der JUnit
Homepage heruntergeladen werden. Wie funktioniert JUnit?Dazu gibt es einen sehr guten Artikel, der die
Vorgehensweise und zugleich die Anwendung und den Nutzen beschreibt (das
englische Original
liegt auf der JUnit Homepage). KurzbeschreibungDa in HIT so ziemlich alle Funktionalitäten bereits vorliegen, wird hier nur
im Schnelldurchlauf erläutert, wie zu bestehenden Methoden Tests geschrieben
werden.
 
  |  | Klasse anlegen, ableiten von junit.framework.TestCase |  |  | je eine Initialisier- und eine Freigabemethode schreiben, die statische
    Werte für den/die Test(s) vorbelegt (sogenannte Fixtures) und freigibt
    (sofern nötig) 
      |  | entweder die Methoden protected void setUp()(für das
        Anlegen von Fixtures) undprotected void tearDown()(für
        die Freigabe von Fixtures, z.B. DB-Verbindungen etc.) überschreiben
        (werden dann automatisch von JUnit ausgeführt) |  |  | oder selbst welche schreiben und sich selbst um die Ausführung
        derselben kümmern |  |  |  | einzelne (oder auch nur eine) publicMethoden schreiben, die
    Tests anhand der JUnit-MethodenAssert.assertXXXX()durchführen |  |  | JUnit-Tests werden über eine statische Methode suite()gestartet, d.h. eine Methodepublic static Test suite()entweder in der Testklasse selbst oder separat in einer eigenen Klasse
    anlegen. Man kannsuite()allerdings auch weglassen, dann
    führt JUnit alle vorhandenen nicht-statischenpublic-Methoden
    der Reihe nach aus |  |  | ausgeführt wird dies durch eine der folgenden Möglichkeiten: 
      |  | via Eclipse-Plugin |  |  | java junit.awtui.TestRunner -c <class-mit-suite() oder
        TestCase-class>für AWT-Anzeige (oder ohne Parameter -c) |  |  | java junit.swingui.TestRunner -c <class-mit-suite() oder
        TestCase-class>für Swing-Anzeige (oder ohne Parameter -c) |  |  | java junit.textui.TestRunner <TestCase class>für
        Text-Anzeige |  |      |