Blog Groovy ako lepidlo medzi Canoo Webtest a Selenium - I.

Groovy ako lepidlo medzi Canoo Webtest a Selenium – I.

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ť.

ASIC RTL Design Engineer / New Processor Chip

JOB Position: ASIC RTL Design Engineer Contract type: Internal employee Location: Bratislava ( Slovakia) Salary: from 2.800+ EUR/Brutto Benefit: Relocation PackageUS/Slovak Company building new...

Product Analyst / Business Analyst / E-Commerce – REMOTE

JOB Position: Product Analyst / Business Analyst Contract type: Contract Location: REMOTE - without travelling or very little Salary: from 4.000+ EUR/MonthlyBuilding relationships...

BI Manager / Security Solutions

Basic informationPosition: BI Manager Contract Type: Internal Employee Location: Bratislava Salary:  from 4.500 EUR/Brutto + BonusThe largest global IT security vendor. Which...

Citrix/MS Windows Server Špecialista pre automobilový priemysel

PRÁCA: Pozícia: Citrix/MS Windows Server Špeialista Pracovný pomer: TPP Miesto práce: Bratislava Plat: od 2000+ Eur/Brutto + mesačné bonusy až do výšky 1000 EUR/BruttoO...

C/C++ Linux Kernel Engineer

JOB Position:C/C++ Linux Kernel Engineer Contract Type: TPP Location: Bratislava, on-site Salary: Od 2500 EUR Company: US Benefits: Relocation packageResponsibilitiesDrive and deliver Linux on new...

NetSuite Consultant / 100% Homeoffice

Basic informationPosition: NetSuite Consultant Contract Type: Internal Employee, Contract Location: 100% Homeoffice with limited travel to Germany Language: EnglishGermany company which has...

Junior / Senior Java Backend Software Engineer

JOB Position: Java Backend Software Engineer Contract type: TPP, Contract Location: Bratislava Salary Junior: 1500 EUR/Brutto Salary Senior: 2200 EUR/Brutto Rate: 3000 -4000 EUR/monthlyPrimary Job...

IT meetupy a podujatia – Február 2020

Prehľad IT meetupov a podujatí od 1. – 8.2.2020.   4.2.  The Art of Buying and Selling Companies WebSupport, Karadžičova 12,...

WebSupport

WebSupport je líder slovenského hostingového trhu a zároveň najväčší registrátor .sk domén....

TOP 5 programovacích jazykov pre rok 2020

V tomto článku vám poviem aké sú podľa mňa najlepšie programovacie jazyky na naučenie sa a na...

Čítaj ďalej:

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ť.