BlogGroovy ako lepidlo medzi Canoo Webtest a Selenium - I.

Groovy ako lepidlo medzi Canoo Webtest a Selenium – I.

CWS_I._1

Spojenie dvoch nezávislých open-source projektov na automatické testovanie webových aplikácií do jedného celku. Tento zdanlivo divný názov série článkov o automatizovanom testovaní webových aplikácií sa môže zdať spočiatku dosť nepochopiteľný, ale dúfam, že po dočítaní to bude všetko jasné. V nasledujúcom texte pôjde o možnosť spojenia dvoch nezávislých open-source projektov na automatické testovanie webových aplikácií do jedného celku. Ide o Canoo Webtest a Selenium. Spojovacím „lepidlom“ bude, ako je z názvu jasné, jazyk plne podporovaný v prostredí Canoo WebTest – Groovy.

V mojich predošlých článkoch o testovaní webových aplikácií som toho už celkom dosť popísal o nástroji  Canoo WebTest, preto teraz nebudem opisovať výhody a nevýhody. Má nesporne veľa výhod, ale jednu nevýhodu predsa má.

Canoo WebTest používa na testovanie „browser pre javu“ – HTMLUnit.  Selenium umožňuje testovanie pomocou reálnych prehliadačov ako sú Internet Explorer, Firefox, Chrome, Safari, či Opera. Táto možnosť Selenia ma podnietila k tomu, aby som sa pokúsil všade tam, kde Cannoo Webtest nedokáže testovať z rôznych objektívnych príčin, nasadiť Selenium. Je totiž úplne jasné, že vývoj HTMLUnit bude vždy o niečo pozadu v porovnaní s vývojom reálnych prehliadačov. To isté platí aj pre RHINO, ktorý zase emuluje funkcie Javascriptu v prostredí Canoo Webtest.

Nasadenie úplne iného testovacieho nástroja je však potrebné „zladiť“, alebo lepšie povedané „zasadiť“, medzi už doteraz existujúce testovacie scenáre Canoo WebTest, a pridať možnosť spustenia testu ako jedného celku. Spustenie a výsledky takéhoto testu musia byť štandardné bez ohľadu na to, že na testovanie sú použité dva celkom odlišné projekty.

V poslednej vete som použil spojenie „dva celkom odlišné projekty“ – to však nie je tak celkom pravda. Sú totiž odlišné len firmami a autormi, stojacimi za ich vývojom. Oba totiž spája technológia, ktorú využívajú, a tou technológiou je Java. Práve spoločná technológia  mi umožnila toto spojenie, spojenie prostredníctvom ďalšej Java technológie – jazyka Groovy.

Na čo to všetko vlastne človek potrebuje? Uvediem celkom reálny príklad z praxe. Vytvárali sme testy, ktoré testovali on-line transakcie na našich portáloch – niečo ako nakupovanie prostredníctvom internetu. Transakcia sa končí zaplatením objednanej služby. Naši zákazníci môžu zaplatiť prostredníctvom platobných kariet. Na otestovanie platenia nám organizácia zabezpečujúca prevod peňazí poskytla testovacie rozhranie, kde my vývojári testujeme zaplatenie, akoby to robil náš reálny zákazník. Tu však nastal problém. Aj testovací platobný web rozoznal, že k nemu nepristupuje reálny internetový prehliadač, ale akýsi robot a testovaciu platobnú transakciu nezrealizoval.

Testovacie platobné rozhranie nie je pod našim vplyvom, a teda nemáme žiadne možnosti ovplyvniť jeho správanie. Čo teraz? Canoo WebTest to nezvláda a my nemôžeme dokončiť testovací scenár. Budeme teda musieť použiť niečo, čo nebude považované testovacím serverom partnera za robota. Musíme použiť reálny internetový prehliadač. Použijeme Google open source projekt – Selenium!

Ako však spojiť Selenium a Canoo Webtest? Skúsil som využiť podporu jazyka Groovy v prostredí Canoo Webtest a vyšlo to. O tom, ako sa to podarilo, sa dočitate nabudúce.

Dobrý článok? Chceš dostávať ďalšie?

Už viac ako 6 200 ITečkárov dostáva správy e-mailom. Nemusíš sa báť, nie každé ráno. Len občasne.

Súhlasím so spracovaním mojich osobných údajov. ( Viac informácií. )

Tvoj email neposkytneme 3tím stranám. Posielame naňho len informácie z robime.it. Kedykoľvek sa môžeš odhlásiť.

Roman Hesteric
Roman Hesterichttp://www.priklady.eu
Pracuje ako QA Architekt v Swiss Re. Predtým CTO pre Java a .Net aplikácie. Autorizovaný spolupracovník na projekte Canoo Webtest. Držiteľ certifikátov MCTS a MCPD pre SharePoint server. V IT pracuje 25 rokov, od starého dobrého Turbo Pascalu od Borlandu, cez Javu, až po C#. Administrátor matematického portálu www.priklady.eu

Čítaj ďalej: