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.

(:source lang=Java -trim +getcode:) @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.

(:source lang=Java -trim +getcode:) @Test(expected = IllegalArgumentException.class) public void testConstructor2() { int neplatnyKod = -321; Polozka polozka = new Polozka("název", neplatnyKod); }