Ověření stavu pomocí specifikace
Ověření stavu specifikací představuje kontrolu stavu na základě vytvořené specifikace pro testovaný koncový stav, který se očekává, že nastane. Tato specifikace je ve formě jednoho nebo více objektů, které jsou charakterizovány atributy očekávaného stavu. Následně dochází k přímému srovnání aktuálního objektu s tímto očekávaným objektem, respektive s očekávanými objekty, jediným voláním asertační metody shody. Tento přístup s sebou nese výhodu v stručnosti kódu a v jeho lehčí čitelnosti.
(:source lang=Java -trim +getcode:)
@Before
public void setUp() {
objednavka = new Objednavka(123);
}
@Test
public void testOverenie2() {
Polozka ocakavanaPolozka = new Polozka("název", 456);
ocakavanaPolozka.setCena(15.99);
//exercise
objednavka.pridejPolozku(ocakavanaPolozka, 1);
//verify
ArrayList<IPolozka> seznamPolozek = objednavka.getSeznam();
assertEquals("pocet polozek objednávky", 1, seznamPolozek.size());
//verify – položka
Polozka aktualnaPolozka = seznamPolozek.get(0);
assertEquals("polozka", ocakavanaPolozka, aktualniPolozka);
}