3. diel - Testovanie v Jave - Hamcrest, JUnit TestRule, best practices

V predchádzajúcom kvíze, Kvíz - Úvod do testovania a unit testov v Jave, sme si overili nadobudnuté skúsenosti z predchádzajúcich lekcií.

V dnešnom tutoriáli o testovaní dokončíme unit testy, uvedieme si knižnicu Hamcrest, ktorá je podporovaná JUnit a zásadne mení spôsob, akým píšeme assercie. Ďalej sa budeme venovať assertovaniu správy výnimky a na záver spomenieme best practices na písanie jednotkových testov.

Hamcrest matchers

Od JUnit 4.4 sa navyše objavila metóda assertThat(), ktorá prináša nový spôsob assercie, tzv. matchers z knižnice Hamcrest. Kombinovaním týchto matcherov môžeme ľahko docieliť vytvorenie aj zložitejšieho výrazu. Asi nás neprekvapí, že matchery sú opäť triedy, na ktorej sa nachádzajú statické metódy. Tie môžeme reťaziť a tiež je možné napísať vlastné matchery. Výsledkom používania tejto novej metódy je vyššia čitateľnosť.

Ukážme si, ako by vyzerala jednoduchá assercia v pôvodnej syntaxi:

assertEquals(2, calculator.add(1, 1));

Teraz si ukážme zápis v Hamcrest:


 

...koniec náhľadu článku...
Pokračuj ďalej

Vedomosti v hodnote stoviek tisíc získaš za pár eur

Došiel si až sem a to je super! Veríme, že ti prvé lekcie ukázali niečo nového a užitočného.
Chceš v kurze pokračovať? Prejdi do prémiovej sekcie.

Obsah článku spadá pod licenciu Premium III, kúpou článku súhlasíš s Prevádzkovými podmienkami.

Čo od nás v ďalších lekciách dostaneš?
  • Prístup k jednotlivým lekciám podľa spôsobu obstarania.
  • Kvalitné znalosti v oblasti IT.
  • Zručnosti, ktoré ti pomôžu získať vysnívanú a dobre platenú prácu.

Popis článku

Požadovaný článok má nasledujúci obsah:

V tutoriáli nadviažeme na unit test z, ktorý prepíšeme do modernejšej syntaxe knižnice Hamcrest. Uvedieme si best practices testovania.
Článok pre vás napísal David Hartinger
Avatar
David je zakladatelem ITnetwork a programování se profesionálně věnuje 15 let. Má rád Nirvanu, nemovitosti a svobodu podnikání.
Unicorn university David sa informačné technológie naučil na Unicorn University - prestížnej súkromnej vysokej škole IT a ekonómie.
Aktivity