Čo je selén?
Selenium je bezplatný (open-source) rámec pre automatické testovanie, ktorý sa používa na overenie webových aplikácií v rôznych prehliadačoch a platformách. Na vytvorenie skriptov na testovanie selénu môžete použiť niekoľko programovacích jazykov, ako sú Java, C #, Python atď. Testovanie pomocou nástroja na testovanie selénu sa zvyčajne nazýva testovanie selénu.
Softvér Selenium nie je len jediný nástroj, ale aj sada softvéru, pričom každý kus zodpovedá rôznym potrebám organizácie na testovanie kvality selénu. Tu je zoznam nástrojov
- Integrované vývojové prostredie selénu (IDE)
- Selénové diaľkové ovládanie (RC)
- WebDriver
- Selénová mriežka

V súčasnosti sú Selenium RC a WebDriver zlúčené do jedného rámca, aby vytvorili Selenium 2 . Selén 1, mimochodom, označuje selén RC.
Ak video nie je prístupné, kliknite sem
V tomto návode sa dozviete:
- Čo je selén?
- Kto vyvinul selén?
- Rovnaký problém s politikou pôvodu
- Zrodenie selénového diaľkového ovládača (Selenium RC)
- Zrodenie selénovej mriežky
- Narodenie selénu IDE
- Zrodenie WebDriveru
- Narodenie selénu 2
- Prečo teda názov selén?
- Stručný úvod Selén IDE
- Stručný úvod Diaľkové ovládanie selénu (Selenium RC)
- Stručný úvod WebDriver
- Selénová mriežka
- Poznámka k podpore prehľadávača a prostredia
- Ako si vybrať správny selénový nástroj pre vašu potrebu
- Porovnanie medzi selénom a QTP (teraz UFT)
- Výhody QTP oproti selénu
Kto vyvinul selén?
Pretože Selenium je zbierka rôznych nástrojov, mala tiež rôznych vývojárov. Ďalej sú uvedené kľúčové osoby, ktoré významne prispeli k projektu selén
Selén primárne vytvoril Jason Huggins v roku 2004 . Inžinier v spoločnosti ThoughtWorks pracoval na webovej aplikácii, ktorá vyžadovala časté testovanie. Keď si uvedomil, že opakované ručné testovanie ich aplikácií je čoraz neefektívnejšie, vytvoril program JavaScript, ktorý bude automaticky ovládať činnosť prehliadača. Tento program pomenoval ako „ JavaScriptTestRunner “. Keď v tejto myšlienke videl potenciál pomôcť automatizovať ďalšie webové aplikácie, vytvoril JavaScriptRunner ako open-source, ktorý bol neskôr premenovaný na Selenium Core . |
Rovnaký problém s politikou pôvodu
Rovnaké zásady pôvodu zakazujú kódu JavaScript prístup k prvkom z domény, ktorá sa líši od miesta, kde bol spustený . Napríklad HTML kód na www.google.com používa JavaScriptový program „randomScript.js“. Rovnaké pravidlá pôvodu umožnia súboru randomScript.js prístup iba na stránky v rámci domény google.com, ako sú google.com/mail, google.com/login alebo google.com/signup. Nemôže však získať prístup na stránky z rôznych webov, ako napríklad yahoo.com/search alebo guru99.com, pretože patria do rôznych domén.
To je dôvod, prečo pred testom Selenium RC museli testeri nainštalovať lokálne kópie programu Selenium Core (program JavaScript) aj webového servera obsahujúceho testovanú webovú aplikáciu, aby patrili do rovnakej domény.
Zrodenie selénového diaľkového ovládača (Selenium RC)
Bohužiaľ; testéri používajúci Selenium Core museli kvôli obmedzeniam, ktoré ukladá rovnaká politika pôvodu, nainštalovať celú testovanú aplikáciu a webový server na svoje vlastné miestne počítače . Takže ďalší inžinier spoločnosti ThoughtWork , Paul Hammant , sa rozhodol vytvoriť server, ktorý bude slúžiť ako HTTP proxy, aby „oklamal“ prehliadač v domnienke, že Selenium Core a testovaná webová aplikácia pochádzajú z rovnakej domény. Tento systém sa stal známym ako selénový diaľkový ovládač alebo selén 1 .
Zrodenie selénovej mriežky
Selenium Grid vyvinul Patrick Lightbody, aby čo najviac riešil potrebu minimalizácie časov vykonania testu. Systém pôvodne nazval „ Hostené QA “. Dokázal počas významných fáz zachytiť snímky obrazovky prehliadača a tiež súčasne odoslať selénové príkazy na rôzne stroje.
Narodenie selénu IDE
Shinya Kasatani z Japonska vytvoril Selenium IDE , rozšírenie pre Firefox, ktoré dokáže automatizovať prehliadač pomocou funkcie nahrávania a prehrávania. S touto myšlienkou prišiel na ďalšie zvýšenie rýchlosti vytvárania testovacích prípadov. Daroval Selén IDE selén projektu v roku 2006 .
Zrodenie WebDriveru
Simon Stewart vytvoril WebDriver okolo roku 2006, keď sa prehliadače a webové aplikácie stávali výkonnejšími a reštriktívnejšími s programami JavaScript, ako je Selenium Core. Bol to prvý multiplatformový testovací rámec, ktorý dokázal ovládať prehliadač z úrovne OS.
Narodenie selénu 2
V roku 2008 sa celý tím Selenium rozhodol spojiť WebDriver a Selenium RC a vytvoriť tak výkonnejší nástroj s názvom Selenium 2 , ktorého jadrom je WebDriver . V súčasnosti sa selén RC stále vyvíja, ale iba v režime údržby. Väčšina úsilia projektu Selenium sa teraz zameriava na Selenium 2.
Prečo teda názov selén?
Názov Selenium vyšiel zo žartu, ktorý Jason raz prelomil svojmu tímu. Počas vývoja selénu populárny vytvoril ďalší automatizovaný testovací rámec spoločnosť s názvom Mercury Interactive (áno, spoločnosť, ktorá pôvodne vyrábala QTP predtým, ako ju získala spoločnosť HP). Pretože selén je dobre známym liekom na otravu ortuťou, Jason navrhol, aby sa ho ujali meno a jeho spoluhráči. Takto sme mohli nazvať tento rámec až do súčasnosti.
Stručný úvod Selén IDE
Seléniové integrované vývojové prostredie (IDE) je najjednoduchší rámec v selénovom balíku a je najľahšie sa naučiť . Je to doplnok Firefox, ktorý si môžete nainštalovať tak ľahko, ako to môžete urobiť s inými doplnkami. Avšak pre svoju jednoduchosť by sa Selenium IDE malo používať iba ako prototypový nástroj . Ak chcete vytvoriť pokročilejšie testovacie prípady, budete musieť použiť buď Selenium RC alebo WebDriver.
Stručný úvod Diaľkové ovládanie selénu (Selenium RC)
Selenium RC bol dlho vlajkovou loďou testovacieho rámca celého projektu Selenium. Toto je prvý automatizovaný nástroj na testovanie webu, ktorý používateľom umožňuje používať programovací jazyk, ktorý uprednostňujú . Od verzie 2.25.0 podporuje RC nasledujúce programovacie jazyky:
- Java
- C #
- PHP
- Python
- Perl
- Ruby
Stručný úvod WebDriver
WebDriver sa v mnohých aspektoch ukazuje ako lepší ako Selenium IDE a Selenium RC . Implementuje modernejší a stabilnejší prístup v automatizácii akcií prehľadávača. WebDriver sa na rozdiel od Selenium RC nespolieha na JavaScript pri testovaní automatizácie selénu. Ovláda prehľadávač priamou komunikáciou s ním.
Podporované jazyky sú rovnaké ako v jazyku Selenium RC.
- Java
- C #
- PHP
- Python
- Perl
- Ruby
Selénová mriežka
Selenium Grid je nástroj používaný spolu so Selenium RC na vykonávanie paralelných testov na rôznych strojoch a rôznych prehľadávačoch súčasne. Paralelné vykonávanie znamená spustenie viacerých testov naraz.
Vlastnosti:
- Umožňuje súčasné spustenie testov vo viacerých prehliadačoch a prostrediach.
- Šetrí čas enormne.
- Využíva koncept uzlov . Rozbočovač funguje ako centrálny zdroj príkazov selénu pre každý pripojený uzol.
Poznámka k podpore prehľadávača a prostredia
Vďaka svojim architektonickým rozdielom podporuje Selenium IDE, Selenium RC a WebDriver rôzne sady prehľadávačov a operačných prostredí.
Selén IDE | WebDriver | |
---|---|---|
Podpora prehľadávača | Mozilla Firefox | Internet Explorer verzie 6 až 11, 32 aj 64-bitový Microsoft Edge verzia 12.10240 a vyššia (čiastočná podpora niektorých vyvíjaných funkcií) Firefox 3.0 a vyššia Google Chrome 12.0. a novšie verzie Opera 11.5 a novšie Android - 2.3 a vyššie pre telefóny a tablety (zariadenia a emulátory) iOS 3+ pre telefóny (zariadenia a emulátory) a 3.2+ pre tablety (zariadenia a emulátory) HtmlUnit 2.9 a vyššie |
Operačný systém | Windows, Mac OS X, Linux | Všetky operačné systémy, v ktorých je možné spúšťať vyššie uvedené prehľadávače. |
Poznámka: Selenium WebDriver sa označuje ako nástupca Selenium RC, ktorého podpora a podpora bola oficiálne oznámená spoločnosťou SeleniumHQ.
Ako si vybrať správny selénový nástroj pre vašu potrebu
Nástroj | Prečo si vybrať? |
---|---|
Selén IDE |
|
Selén RC |
|
WebDriver |
|
Selénová mriežka |
|
Porovnanie medzi selénom a QTP (teraz UFT)
Quick Test Professional (QTP) je patentovaný automatizovaný testovací nástroj, ktorý predtým vlastnila spoločnosť Mercury Interactive predtým, ako ho v roku 2006 získala spoločnosť Hewlett-Packard . Sada Selenium Tool Suite má oproti QTP mnoho výhod, ktoré sú podrobne uvedené nižšie -
Výhody a výhody selénu oproti QTP
Selén | QTP |
---|---|
Open source , zadarmo na použitie a zadarmo. | Obchodné . |
Vysoko roztiahnuteľný | Obmedzené doplnky |
Môže spúšťať testy v rôznych prehliadačoch | Testy je možné spustiť iba v prehliadačoch Firefox , Internet Explorer a Chrome |
Podporuje rôzne operačné systémy | Možno použiť iba v systéme Windows |
Podporuje mobilné zariadenia | QTP podporuje automatizáciu testovania mobilných aplikácií (iOS a Android) pomocou riešenia HP s názvom - HP Mobile Center |
Dokáže vykonávať testy, keď je prehliadač minimalizovaný | Je potrebné, aby bola testovaná aplikácia viditeľná na pracovnej ploche |
Môže vykonávať testy paralelne . | Môže sa vykonávať iba paralelne, ale s použitím centra kvality, ktoré je opäť plateným produktom. |
Výhody QTP oproti selénu
QTP | Selén |
---|---|
Môže testovať webové aj desktopové aplikácie | Môžu sa testovať iba webové aplikácie |
Dodáva sa so zabudovaným úložiskom objektov | Nemá žiadne vstavané úložisko objektov |
Automatizuje sa rýchlejšie ako selén, pretože sa jedná o plne vybavené IDE. | Automatizuje sa pomalšie, pretože nemá natívne IDE a na vývoj je možné použiť iba IDE tretích strán |
Testovanie na základe dát sa vykonáva ľahšie, pretože má vstavané globálne a lokálne dátové tabuľky . | Testovanie na základe údajov je ťažkopádnejšie, pretože pri nastavovaní hodnôt testovacích údajov sa musíte spoliehať na možnosti programovacieho jazyka |
Môže pristupovať k ovládacím prvkom v prehliadači (ako napríklad panel Obľúbené položky, Panel s adresou, Tlačidlá Späť a Vpred atď.) | Nie je možné získať prístup k prvkom mimo testovanej webovej aplikácie |
Poskytuje profesionálnu zákaznícku podporu | Nie je ponúkaná žiadna oficiálna podpora používateľov. |
Má natívne možnosti exportovať testovacie dáta do externých formátov | Nemá natívne možnosti exportovať údaje za behu do externých formátov |
Podpora parametrizácie je zabudovaná | Parametrizáciu je možné vykonať pomocou programovania, ale je ťažké ju implementovať. |
Protokoly o teste sa generujú automaticky | Žiadna natívna podpora na generovanie testovacích / chybových správ. |
Aj keď je zrejmé, že QTP má pokročilejšie schopnosti, selén prevažuje nad QTP v troch hlavných oblastiach:
- Cena (pretože selén je úplne zadarmo)
- Flexibilita (kvôli množstvu programovacích jazykov, prehľadávačov a platforiem, ktoré podporuje)
- Paralelné testovanie (niečo, čo QTP dokáže, ale iba s využitím Quality Center)
Zhrnutie
- Celá sada Selenium Software Testing Suite sa skladá zo štyroch komponentov:
- Selenium IDE, doplnok pre Firefox, ktorý môžete použiť iba pri vytváraní relatívne jednoduchých testovacích prípadov a testovacích balíkov.
- Diaľkové ovládanie selén, známe tiež ako Selenium 1, čo je prvý selénový nástroj, ktorý používateľom umožňoval používať programovacie jazyky pri vytváraní zložitých testov.
- WebDriver, novší prielom, ktorý umožňuje vašim testovacím skriptom komunikovať priamo s prehliadačom, a tým ich ovládať z úrovne operačného systému.
- Selenium Grid je tiež nástroj, ktorý sa používa so softvérom Selenium RC na vykonávanie paralelných testov v rôznych prehliadačoch a operačných systémoch.
- Selenium RC a WebDriver boli zlúčené a vytvorili Selenium 2.
- Selén je z hľadiska nákladov a flexibility výhodnejší ako QTP. Umožňuje vám tiež spustiť testy paralelne, na rozdiel od QTP, kde môžete testovať iba postupne.