4it101»J Unit 21

J Unit 21

Delegovaný přístup

V komplexnějších případech, kdy je logika testu složitější a dochází k opakovanému vytváření stejného přípravku, vhodné je použít takzvaný delegován přístup vytvoření testovacího přípravku. Jde o provádění samostatných metod, které během jejich volání vytvoří testovací přípravek. Tyto pomocné metody jsou volané přímo z testovacích metod. Tyto metody mohou být tak voláno několika testy nezávisle, čímž je zajištěna přehlednost kódu a dojde i k odstranění duplicit v kódu testovací třídy.

(:source lang=Java -trim +getcode:) public Objednavka vytvorenieObjednavky() { Objednavka objednavka = new Objednavka(123); objednavka.setStav("nová"); Kniha kniha1 = new Kniha(456); Kniha kniha2 = new Kniha(789); objednavka.pridejPolozku(kniha1); objednavka.pridejPolozku(kniha2); return objednavka; } public Objednavka vymazatPolozkyObjednavky() { Objednavka objednavka = vytvoreniObjednavky(); objednavka.vymazatPolozky(); return objednavka; } @Test public void testPripravek2() { //setup Objednavka objednavka = vytvoreniObjednavky(); //exercise + verify assertEquals("nová", objednavka.getStav()); } @Test public void testPripravek3() { //setup Objednavka objednavka = vymazatPolozkyObjednavky(); //exercise + verify assertEquals(0, objednavka.getSeznam().size()); }