Selenium intro – úvod

Toto je náš prvý tutoriál zo série tutoriálov o Selenium. V tomto tutoriáli si preštudujeme základy balíka Selenium, jeho rôzne komponenty, funkcie, výhody a obmedzenia.
Obsah
Čo je Selenium?
Selenium je bezplatný balík na automatizáciu testovania s otvoreným zdrojovým kódom (open-source), ktorý sa používa na automatizáciu webových aplikácií. Podporuje automatizáciu v rôznych prehliadačoch, platformách a programovacích jazykoch. Pomocou Selenium môžeme automatizovať funkčné testy a ľahko ich integrovať s nástrojmi Maven, Jenkins a ďalšími nástrojmi na automatizáciu a kontinuálnu integráciu.
Komponenty Selenium Suite
Selenium Suite sa skladá z týchto štyroch komponentov:
- Selenium IDE – Selenium IDE je nástroj na automatizáciu záznamu a prehrávania, pomocou ktorého môžeme automatizovať webové aplikácie. Dodáva sa vo forme rozšírenia prehliadačov Chrome a Firefox. Keďže funguje na princípe záznamu a prehrávania, je to nástroj prvej voľby na automatizáciu pre ľudí bez skúseností s programovacím jazykom alebo s obmedzenými skúsenosťami.
- Selenium RC – Selenium Remote Control(RC) je oficiálne nahradené nástrojom Selenium. Na automatizáciu sa používal na vloženie javascriptového kódu do prehliadača a na spustenie automatizačných skriptov vyžadoval ďalší server.
Okrem toho mal mnoho obmedzení, ako napríklad – bol pomalý, nemal „headless“ prehliadač (nevedel spustiť prehliadač s testom na pozadí) ako HtmlUnitDriver a pred spustením testovacích skriptov bolo potrebné spustiť server. - Selenium WebDriver – zďaleka najdôležitejšia súčasť balíka Selenium Suite. Poskytuje rôzne ovládače pre rôzne prehliadače a podporuje viacero programovacích jazykov.
Je čisto objektovo orientovaný a podporuje všetky hlavné prehliadače – Chrome, Firefox, IE, Safari atď. Skriptovanie možno vykonávať vo väčšine populárnych jazykov – Java, Python, Ruby a podobne. - Selenium Grid – Selenium Grid je tiež dôležitou súčasťou balíka Selenium Suite. Pomáha pri distribuovanom paralelnom spúšťaní testov Selenium na viacerých vzdialených počítačoch.
Má takzvaný „hub“ a viacero uzlov. V uzloch sa spúšťajú inštancie Selenium, na ktorých sa vykonávajú testovacie prípady. Tieto uzly sú pripojené k centrálnemu uzlu, ktorý funguje ako server a riadi celé vykonávanie testov.
Výhody Selenium
Pozrime sa teraz na niektoré z výhod Selenium:
- Selenium je open source, za jeho používanie sa neplatia žiadne licenčné náklady.
- Skriptovanie možno vykonávať vo väčšine široko používaných programovacích jazykov, ako sú Java, C#, Ruby a Python.
- Poskytuje podporu platforiem pre všetky hlavné operačné systémy – Windows, Linux, Mac OS a Solaris.
- Podporuje väčšinu populárnych prehliadačov, ako sú Chrome, Firefox, Edge, Internet Explorer, Opera a Safari.
- Komponent Selenium IDE balíka Selenium poskytuje funkcie nahrávania a prehrávania, pomocou ktorých môžu písať automatizačné skripty aj ľudia, ktorí nemajú veľa skúseností s programovaním.
- Selenium Grid pomáha pri paralelnom a distribuovanom testovaní.
Obmedzenia Selenium
Niektoré z obmedzení programu Selenium sú:
- Selenium neposkytuje podporu automatizácie desktopových aplikácií.
- Webové služby – REST alebo SOAP nie je možné automatizovať pomocou Selenium.
- Selenium WebDriver vyžaduje požiadavky na programovací jazyk na vytvorenie skriptu.
- Na vykonávanie bežných úloh potrebných pri automatizácii, ako je logovanie, čítanie-zápis do externých súborov, sa musíme spoliehať na externé knižnice.
Pozrime sa teraz na komponent Selenium WebDriver trochu podrobnejšie.
Čo je Selenium WebDriver?
Selenium Webdriver je jeden z najpoužívanejších nástrojov na automatizáciu webových aplikácií. Automatizuje prehliadače priamym volaním ich natívnej metódy na rozdiel od Selenium RC, ktoré na účely automatizácie vkladá do prehliadačov javascriptový kód. Preto je Webdriver oveľa rýchlejší ako Selenium RC. Okrem toho dokáže Selenium WebDriver ľahko spracovať aj scenáre, ako sú upozornenia (alerts), vyskakovacie okná (pop-ups), ajax requesty, akcie klávesnice a myši. Keďže Webdriver priamo volá metódy rôznych prehliadačov, preto máme pre každý prehliadač samostatný ovládač.
Záver
Týmto sme ukončili náš návod na úvod do nástroja Selenium a jeho najdôležitejšej súčasti Selenium WebDriver. V ďalšom tutoriáli tejto série Selenium Tutoriál sa budeme venovať inštalácii komponentu Selenium WebDriver.