4it101»J Unit 13

J Unit 13

Test konstruktora

Testy Konstruktor si berou za cíl redukovat duplicity v kódu testů. V každém testu se pracuje s instancemi testované třídy a otestovat je v každé zkušební metodě opakovaně nemusí být právě optimální. Z tohoto důvodu je vhodné otestovat konstruktor testované třídy odděleně a jeden krát. Nejčastěji zde bude použit test zjevné úspěšnosti, ale některé specifické příklady mohou vyžadovat i otestování vyvolání výjimek.


@Test
public void testConstructor() {
    int neplatnyKod = -321;
    try {
        Polozka polozka = new Polozka("název", neplatnyKod);
        fail("Záporný kód knihy!");
     } catch (IllegalArgumentException e) {
        assertEquals("Kod knihy musi byt nezaporny", e.getMessage());
    }
 }
 

Od verze frameworku JUnit 4 je možný i kompaktnější, úspornější, kratší zápis s využitím parametru argumentu @Test testovací metody expected, který pracuje s hodnotami třídy Throwable.


@Test(expected = IllegalArgumentException.class)
public void testConstructor2() {
    int neplatnyKod = -321;
    Polozka polozka = new Polozka("název", neplatnyKod);
}