JUnit-Test

Aus Fachinformatiker Azubi
Wechseln zu: Navigation, Suche

JUnit ist für das testen der Methoden gedacht. Bei großen Projekten wird ist es nahezu Pflicht einen JUnit-Test zu erstellen. Damit bei Erweiterungen alle Prüfungen berücksichtigt werden.

Annotationen

Annotationen werden vor den Methoden deklariert. Sie sagen aus was bei diesem Testfalls passiert.

  • @Test - Testfall
  • @Before - Diese Methode wird vor jeder Test-Methode ausgeführt (Aufbau Testumgebung)
  • @After - Diese Methode wird nach jeder Test-Methode ausgeführt (Bsp. Schließen der Verbindungen)
  • @BeforeClass - Diese statische Methode wird eimalig am Start ausgeführt (Bitte auch static in der Methode benutzen)
  • @AfterClass - Diese statische Methode wird eimalig am Ende ausgeführt (Bitte auch static in der Methode benutzen)
  • @Test(expected=Error.class) - Testfall ist richtig wenn diese Exception auftritt
  • @Test(timeout = 100ms) - Testfall ist richtig wenn der Test unter 100ms durchläuft
  • @Ignore("Kommentartext") - Diese Methode wird im Testcase nicht ausgeführt, allerdings können andere Testmethoden die Methode nutzen.

Assert-Methoden

Mit den Assert-Methoden kann man die Test auf die Richtigkeit prüfen.

  • assertEquals(expected, actual) - Überprüft zwei objekte auf gleichheit
  • assertNotSame(unexpected, actual) - Überprüft zwei objekte auf nicht-gleichheit
  • assertEquals(expected, actual, delta) - Überprüft zwei float oder double objekte und die delta Differenz
  • assertNotNull(object) - Prüfung ist Richtig, wenn object nicht null ist.
  • assertNull(object) - Prüfung ist Richtig, wenn object null ist.
  • assertTrue(condition) - Prüfung ist Richtig, wenn condition true ist.
  • assertFalse(condition) - Prüfung ist Richtig, wenn condition false ist.
  • fail("Fehler in der Kostenrechnung") - Bei Aufruf dieser Methode schlägt explizit ein Fehler auf.

Beispiel

Aus der Datei Berechnung.java wird als erstes BerechnungTest.java Datei. Die Prüfung könnte ungefähr so aussehen:

import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

public class BerechnungTest {

    private Berechnung funktion;

    @Test
    public void testDezimalInDual() {
	Berechnung funktion = new Berechnung();
	String expected = "10101";
	String actual = funktion.umrechnen("21", 2);

	Assert.assertEquals(expected, actual);
    }
}

Exception testen

Mittels einer Annotation definieren wir, im falle einer Exception ist der Test richtig.

    @Test(expected=NullPointerException.class)
    public void test() {
        // ... Code
    }

Tastenkombination

Unter Eclipse lässt sich das Ausführen einer JUnit Datei mittels folgender Tastekombination:

Shift + Alt + X und dann die Taste **T**