Kazdy release vyzadoval dva dny rucniho testovani — 150 scenaru. S dvema releasech mesicne to byla ctvrtina casu testera. Rozhodli jsme se automatizovat.
Page Object pattern¶
Kazda stranka ma Java tridu zapouzdrujici elementy a akce. Zmena UI = uprava Page Object, testy zustanou nezmenene.
Stabilita testu¶
Explicit waits misto Thread.sleep(). Nezavisle testy. Stabilni testovaci data (DB snapshot). Headless mode (Xvfb) pro CI.
Integrace s Jenkins¶
Selenium testy bezi po deploymentu na testovaci server. 40 testu za 15 minut.
Co automatizovat¶
Smoke testy, regresni testy kritickych procesu, CRUD hlavnich entit. Ne: exploratorne testovani, UX review.
Vysledky po 6 mesicich¶
40 testu, 60 procent pokryti kritickych scenaru. Rucni testovani z 2 dnu na 4 hodiny. Regresni bugy -40 procent.