25

Selenium test je nástroj na automatizáciu testovania webových aplikácií

V súčasnosti na testovanie webových aplikácii prehliadačov existuje viacero nástrojov, pričom jedným z nich je Selenium test. Aké sú jeho výhody a prečo by si ho mal vedieť používať?

Testovanie je bezpochyby jednou z najdôležitejších súčastí vývoja softvéru a aplikácií. IT tester konzultant, alebo špecialista zisťuje, či všetko funguje tak, ako má a či používateľovi náhodou nevyskočí chyba, ktorá by mu mohla obmedziť používanie aplikácie.

Čo je Selenium?

Selenium alebo Selenium test je bezplatný (open-source) framework na automatizované testovanie, ktorý sa používa na testovanie webových aplikácií v rôznych prehliadačoch a na rôznych platformách. Selenium disponuje viacerými nástrojmi určenými na testovanie, pričom každý z nich sa zameriava na iné špecifické potreby. Jedná sa o nástroje ako:

  • Selenium WebDriver je rozhranie na písanie pokynov, ktoré fungujú vzájomne v rôznych prehliadačoch. Toto je implementované prostredníctvom ovládača prehliadača (špecifického pre prehliadač), ktorý odosiela príkazy prehliadaču a získava výsledky. V súčasnosti je Selenium WebDriver zlúčený so Selenium RC do spoločného frameworku a spolu tvoria Selenium 2.
  • Selenium IDE je kompletné integrované vývojové prostredie (IDE) pre testy Selenium. Umožňuje záznam, úpravu a ladenie funkčných testov. Skripty sú zaznamenané v Selenese, špeciálnom testovacom skriptovacom jazyku pre Selenium. Selenese poskytuje príkazy na vykonávanie akcií v prehliadači (kliknutie na odkaz, výber možnosti) a na načítanie údajov z výsledných stránok.
  • Selenium Grid je server, ktorý umožňuje testom používať inštancie webového prehliadača bežiace na vzdialených počítačoch. Funguje ako centrum (alebo hub), ktorý testy kontaktujú, aby získali prístup k inštanciám prehliadača. Hub má zoznam serverov, ktoré poskytujú prístup k inštanciám prehliadača (uzly WebDriver), a umožňuje testom používať tieto inštancie. Selenium Grid umožňuje spúšťať testy paralelne na viacerých počítačoch a centrálne spravovať rôzne verzie prehliadačov a konfigurácie prehliadačov (namiesto nastavenia u každého jednotlivého testu). Ide o užitočné riešenie z hľadiska rozloženia testovacej záťaže na viacero počítačov a kompatibility, teda možnosti spúšťania testov v prehliadačoch bežiacich na rôznych platformách alebo operačných systémoch.

Selenium podporuje viacero programovacích jazykov, ku ktorým patrí programovanie v java, C#, Python, PHP a mnohé ďalšie.

Vedel si, že...

… názov Selenium bol spočiatku len vtip, ktorý zakladateľ Jason Huggins povedal raz svojmu tímu? Počas vývoja Selenia bol populárny ďalší nástroj na automatické testovanie, ktorý vyvíjala spoločnosť Mercury Interactive. A keďže selén je známy protijed na otravu ortuťou (ktorá sa v angličtine označuje ako mercury), Jason navrhol, aby sa ich nástroj volal Selenium. Jeho tímu sa tento názov páčil a začali ho tak volať.

Selenium IDE – ideálny nástroj na jednoduché testy

IDE je najjednoduchší nástroj v balíku Selenium, preto je ideálny pre začiatočníkov. Ide o doplnok v podobe pluginu pre Google Chrome a Mozillu Firefox, ktorý si môžeš veľmi ľahko nainštalovať spolu s ďalšími doplnkami. Avšak Selenium IDE sa využíva len na jednoduché testy. Ak budeš chcieť robiť pokročilé testy, budeš si musieť stiahnuť Selenium WebDriver.

Z prehliadačov podporuje IDE spomenutý Mozillu Firefox a Google Chrome, z operačných systémov Windows, Mac OS a Linux.

Skupina Selenium testerov pracujúca s nástrojom Selenium IDE
Nástroj Selenium IDE je vhodný na jednoduché testy

Ako Selenium IDE použiť?

Najprv si musíš stiahnuť Selenium tester. Potom otvor jeden z prehliadačov napríklad Firefox, klikni na ponuku v pravom hornom rohu a následne klikni na „Doplnky”. Vyber „Nájsť ďalšie doplnky”, kam zadáš „Selenium IDE”. Nakoniec už len klikni na „Pridať do Firefoxu” a inštaláciu máš hotovú.

Po inštalácii sa v pravom hornom rohu prehliadača zobrazí ikona Selenium IDE. Po kliknutí na ňu sa zobrazí uvítacia správa. Po jej zatvorení vytvor nový test pre nový projekt. Najprv zadaj názov projektu a  platnú adresu URL. Po jej zadaní môžeš test spustiť.

Keď test skončí, nezabudni svoju prácu uložiť. V pravom hornom rohu nástroja klikni na malú disketu. Po kliknutí sa ti zobrazí možnosť výberu, kam môžeš projekt uložiť. Vyber umiestnenie a súbor ulož. Na ploche alebo v priečinku, kam si test uložil, by si mal mať súbor s príponou .side.

Selenium IDE je nástroj, ktorý nevyžaduje žiadnu komplikovanú inštaláciu. Pri ostatných nástrojoch je celý proces o niečo komplikovanejší.

Zhrnutie:

Na vytváranie jednoduchých testovacích prípadov a balíkov, s malými alebo žiadnymi predchádzajúcimi znalosťami v programovaní, ktoré sa dajú exportovať do RC alebo WebDriver v rôznych formátoch.

Selenium WebDriver – stabilnejší prístup pri testovaní

Selenium WebDriver poskytuje modernejší a stabilnejší prístup pri automatizácii testov. Na rozdiel od RC sa pri testovaní nespolieha na JavaScript. Prehliadač ovláda tak, že s ním priamo komunikuje. Podporuje rovnaké programovacie jazyky ako RC.

Z prehliadačov podporuje:

  • Internet Explorer, verzie 6 až 11,
  • Microsoft Edge, verzia 12.10240 a vyššie,
  • Firefox 3.0 a vyššie,
  • Google Chrome 12.0 a vyššie,
  • Opera 11.5 a vyššie,
  • Android 2.3 a vyššie,
  • iOS 3.0 a vyššie pre telefóny a 3.2 a vyššie pre tablety,
  • HtmlUnit 2.9 a vyššie.

Z operačných systémov podporuje všetky, v ktorých môžu bežať vyššie uvedené prehliadače.

Ako Selenium WebDriver použiť?

Najprv si musíš stiahnuť a nainštalovať Java 8 alebo novšiu verziu. Následne nainštaluj najnovšiu verziu Eclipse IDE. Dvojklikom otvor stiahnutý súbor, ktorý by mal byť v zip formáte. Zo všetkých súborov, ktoré sa v zip súbore nachádzajú, klikni na Eclipse.

Po kliknutí na Eclipse vyber adresár, do ktorého chceš ukladať všetky svoje projekty a klikni na ikonu “Launch”.

Následne si stiahni Selenium WebDriver Java Client pozostávajúci zo súborov JAR, ktoré budeš potrebovať na konfiguráciu s Eclipse IDE. V Eclipse vytvor nový projekt, zadaj názov a vyber JRE, ktoré chceš použiť. Potom zvoľ “Project layout” a klikni na tlačidlo “Finish”.

V ďalšom kroku klikni pravým tlačidlom na novovytvorený projekt. Vyber možnosť “New” a “Package”. Po kliknutí sa ti objaví kontextové okno, kde zadáš názov balíka a klikneš na tlačidlo “Finish”.

Potom  pravým tlačidlom klikni na nový balík, ktorý si si urobil, vyber možnosť “New” a “Class”. Otvorí sa ti nové okno, kde zadáš názov triedy a klikneš na “Finish”.

Ďalej musíš ešte vyriešiť takzvaný Java Build Path. Klikni pravým tlačidlom myši na svoj projekt a vyber možnosť “Properties”. V okne, ktoré sa ti otvorilo, klikni na “Java Build Path”, vyber “Libraries” a “Add External JARs”.

Keď na túto možnosť klikneš, otvorí sa ti nové okno. Vyber priečinok, kam si uložil JAR súbory. Najprv vyber tie, ktoré by mali začínať názvom “client”. Následne znova otvor okno a klikni na priečinok s názvom “libs”. V ňom nájdeš niekoľko súborov s koncovkou .jar. Vyber ich všetky.

Po dokončení už len klikni na tlačidlo “Apply and Close”. Týmto si úspešne nakonfiguroval WebDriver s IDE Eclipse. Teraz môžeš pokračovať a vytvoriť svoj prvý test.

Selenium testeri používajú Selenium WebDriver pre stabilnejší prístup
Selenium WebDriver je komplikovanejší na použitie

Zhrnutie:

Na vytvorenie prispôsobených výsledkov testov, ďalej na testovanie aplikácií, ktoré sú bohaté na funkcie založené na AJAX.

Pri navrhovaní testovacieho prípadu, použitie vyžaduje isté znalosti programovacieho jazyka.

Selenium RC – vhodný aj na komplikované testy

Selenium RC predstavoval dlhú dobu vlajkovú loď celého Selenia. Išlo o prvý automatizovaný webový testovací nástroj, ktorý umožnil používateľom použiť programovací jazyk podľa ich potreby. Od verzie 2.25.0 podporuje RC tieto programovacie jazyky:

Zhrnutie:

Na vytvorenie komplexnejších testov s použitím jazyka Selenese, ďalej na testovanie webových  aplikácií, ktoré sú založené na AJAX. Dá sa využiť aj Selenium Grid, na nasadenie testov na rôznorodých prostrediach.

Selenium testerka používa Selenium RC na náročnejšie testy
Selenium RC je rýchlejší ako IDE.

Selenium Grid – najlepší na paralelné testovanie

Selenium Grid sa využíva na spustenie paralelných testov na rôznych počítačoch a prehliadačoch súčasne. To celé sa deje vďaka aplikácie Selenium standalone server, ktorá beží na Jave, čoho výsledkom je, že šetrí čas a urýchľuje celý proces práce. Jeho používanie nie je komplikované, avšak potrebuješ naň určité programovacie skúsenosti.

Ako používať Selenium Grid?

Pred použitím Selenium Grid si musíš stiahnuť balík Selenium Server Standalone. Tento balík obsahuje Hub, WebDriver a RC, ktorý je potrebný na spustenie Gridu. Okrem toho nezabúdaj, že na spustenie Selenium Grid potrebuješ mať nainštalovanú a nakonfigurovanú Javu.

V ďalšom kroku si musíš nastaviť Selenium Hub, ktorý je centrálnym bodom v Selenium Grid. Prijíma požiadavky od klienta a slúži na smerovanie testovacích príkazov JSON. Hub spustíš tak, že otvoríš príkazový riadok a pomocou príkazu java -jar selenium-server-standalone-<version>.jar -role hub prejdeš do adresára, v ktorom je uložený súbor JAR Standalone Selenium Server. Takýmto spôsobom spustíš Hub v predvolenom nastavení.

Následne už len stačí Selenium Grid nakonfigurovať a začať používať v prehliadačoch.

Zhrnutie:

Spustenie skriptov Selenium RC vo viacerých prehliadačoch a operačných systémoch súčasne.

Vhodné aj na paralelné spustenie testovacích sad, ktoré je treba dokončiť v čo najkratšom čase.

Prečo používať Selenium test na automatizované testovanie softvéru?

Tester softvéru, akým je Selenium, má množstvo výhod pre každého programátora. Vďaka tomu, že automaticky testuje aplikácie ti šetrí množstvo práce, ktorú by si musel robiť manuálne. Veľkým plusom Selenium IT testera v porovnaní s inými testermi je aj to, že poskytuje niekoľko zaujímavých nástrojov. Tie môžeš využívať podľa tvojich skúseností napríklad ako aj Java programátor, alebo podľa toho, na čom aktuálne pracuješ.

Kto stojí za zostrojením nástroja Selenium?

Selenium je nástroj s pomerne dlhou históriou. Vznikol v roku 2004, keď ho vytvoril Jason Huggins. Ten pracoval na webovej aplikácii, ktorá si vyžadovala časté testovanie. Po krátkom čase si uvedomil, že opakované manuálne testovanie je neefektívne, preto vytvoril javascriptový program, ktorý automaticky ovládal akcie prehliadača. Tento program nazval JavaScript Test Runner.

Huggins videl vo svojom vytvorenom nástroji potenciál, preto z neho spravil open-source nástroj, ktorý neskôr premenoval na Selenium Core.

Selenium však nemá len jedného zakladateľa. Keďže predstavuje súbor viacerých nástrojov, s ich vznikom sa spájajú ďalšie osoby.

  • Selenium RC – nástroj sa spočiatku volal Selenium Remote Control alebo Selenium 1 a vyvinul ho Paul Hammant. Neskôr sa zlúčil so Selenium WebDriver a vytvorili spolu Selenium 2.
  • Selenium Grid – nástroj vyvinul Patrick Lightbody, ktorý sa zaoberal potrebou čo najviac minimalizovať časy vykonávania testov. Jeho prvý systém sa volal “Hosted QA” a bol schopný zachytiť screenshoty prehliadača počas významných fáz testov.
  • Selenium IDE – nástroj vytvoril Shinya Kasatani ako rozšírenie Firefoxu, ktoré dokáže prehliadač automatizovať a urýchliť celý proces testovania.
  • Selenium WebDriver – nástroj vytvoril Simon Stewart v roku 2006. Išlo o prvý multiplatformový framework, ktorý dokázal ovládať prehliadač na úrovni OS.

Vyskúšaj Selenium aj ty

Selenium je skvelý nástroj, ktorý ti pomáha automatizovane testovať webové aplikácie. Ak nemáš veľa skúseností, začni s nástrojom IDE, ktorý stačí len nainštalovať do prehliadača. Keď ti to nebude stačiť, prejdi na ďalšie verzie vhodné pre programátorov so skúsenosťami.

Ovládanie nástroja pre automatizované testovanie, akým je napríklad Selenium, ti otvára dvere k zaujímavým pracovným ponukám. Nauč sa, ako ho využívať a naštartuj svoju kariéru vo svete IT.

Voľné pracovné ponuky

Potrebuješ viac informácií?

Zisti viac o našej spoločnosti alebo o voľných pracovných miestach. Napíš nám a pridaj sa do nášho tímu.