Co je to Selenium? Úvod do Selenium Testování automatizace
Co je to Selenium?
Selenium je bezplatný (open-source) automatizovaný testovací rámec používaný k ověřování webových aplikací napříč různými prohlížeči a platformami. Můžete použít více programovacích jazyků jako např Java, C#, Pythonatd. vytvořit Selenium Testovací skripty. Testování se provádí pomocí Selenium testovací nástroj je obvykle označován jako Selenium Testování.
Selenium Sada nástrojů
Selenium Software není jen jeden nástroj, ale sada softwaru, z nichž každý vyhovuje něčemu jinému Selenium Potřeby organizace testování kvality. Zde je seznam nástrojů
- Selenium Integrované vývojové prostředí (IDE)
- Selenium Dálkové ovládání (RC)
- webový ovladač
- Selenium Mřížka
Momentálně, Selenium RC a WebDriver jsou sloučeny do jednoho rámce a tvoří se Selenium 2. Selenium 1, mimochodem, odkazuje Selenium RC.
Video Tutorial Selenium
klikněte zde pokud video není přístupné
Kdo se vyvíjel Selenium?
Od Selenium je sbírka různých nástrojů, měla také různé vývojáře. Níže jsou uvedeny klíčové osoby, které do projektu významně přispěly Selenium Projekt
Především, Selenium byl vytvořil Jason Huggins v roce 2004. Inženýr v ThoughtWorks pracoval na webové aplikaci, která vyžadovala časté testování. Když si uvědomil, že opakované ruční testování jejich aplikace je stále neefektivnější, vytvořil a JavaScénář program, který by automaticky řídil akce prohlížeče. Tento program nazval „JavaScriptTestRunner. "
Viděl potenciál v této myšlence pomoci automatizovat další webové aplikace, udělal JavaScriptRunner open-source, který byl později přejmenován Selenium Jádro. Pro ty, kteří mají zájem prozkoumat další možnosti testování webových aplikací, se podívejte na tyto Selenium alternativy.
Stejný problém se zásadami původu
Zásady stejného původu zakazují JavaKód skriptu z přístupu k prvkům z domény, která se liší od místa, kde byl spuštěn. Příklad, HTML kód na www.google.com používá a JavaSkriptovací program „randomScript.js“. Stejná zásada původu umožní pouze randomScript.js přistupovat na stránky v rámci google.com, jako jsou google.com/mail, google.com/login nebo google.com/signup. Nemůže však přistupovat na stránky z různých webů, jako je yahoo.com/search nebo guru99.com, protože patří do různých domén.
To je důvod, proč před Selenium RC, testeři potřebovali nainstalovat místní kopie obou Selenium Jádro (a JavaScript program) a webový server obsahující testovanou webovou aplikaci, aby patřily do stejné domény
Narození Selenium Dálkové ovládání (Selenium RC)
Bohužel; používající testery Selenium Core muselo nainstalovat celou testovanou aplikaci a webový server na své vlastní místní počítače kvůli omezením uloženým společností stejná politika původu. Takže další inženýr z ThoughtWork, Paul Hammant, se rozhodl vytvořit server, který bude fungovat jako HTTP proxy, aby „obelstil“ prohlížeč, aby tomu uvěřil Selenium Core a testovaná webová aplikace pocházejí ze stejné domény. Tento systém se stal známým jako Selenium dálkové ovládání or Selenium 1.
Narození Selenium Mřížka
Selenium Grid byl vyvinut společností Patrik Lightbody řešit potřebu co možná nejvíce minimalizovat dobu provádění testů. Původně nazval systém „Hostované QA.“ Byl schopen zachytit snímky obrazovky prohlížeče během významných fází a také odesílání Selenium příkazy různým strojům současně.
Narození Selenium IDE
Shinya Kasatani Japonska vytvořil Selenium IDE, je Firefox a rozšíření Chrome, které dokáže automatizovat prohlížeč pomocí funkce nahrávání a přehrávání. S tímto nápadem přišel, aby dále zvýšil rychlost vytváření testovacích případů. Daroval Selenium IDE do Selenium Projekt v 2006.
Zrození WebDriveru
Simon Stewart vytvořil WebDriver cca 2006 kdy byly prohlížeče a webové aplikace stále výkonnější a více omezující JavaSkriptovací programy jako Selenium Jádro. Byl to první multiplatformní testovací rámec, který dokázal ovládat prohlížeč z úrovně OS.
Narození Selenium 2
In 2008, Celý Selenium Tým se rozhodl sloučit WebDriver a Selenium RC k vytvoření výkonnějšího nástroje tzv Selenium 2s Jádrem je WebDriver. V současné době, Selenium RC se stále vyvíjí, ale pouze v režimu údržby. Většina Selenium Úsilí projektu se nyní soustředí na Selenium 2.
Tak proč ten název Selenium?
Název Selenium vyšel z vtipu, který Jason jednou prohodil svému týmu. Během Selenium's vývoj, další automatické testování framework byl populární vyroben společností tzv Mercury interaktivní (ano, společnost, která původně vyráběla QTP, než ji získala HP). Od té doby Selenium je známým protijedem Mercury otravy, Jason navrhl to jméno a jeho spoluhráči to vzali. Tak jsme museli nazývat tento rámec až do současnosti.
Co je to Selenium IDE?
Selenium Integrované vývojové prostředí (IDE) je nejjednodušší rámec v Selenium apartmá a je nejsnadnější se to naučit. Jedná se o Chrome a Firefox plugin které můžete nainstalovat stejně snadno jako s jinými pluginy. Díky své jednoduchosti však Selenium IDE by se mělo používat pouze jako a prototypovací nástroj. Pokud chcete vytvořit pokročilejší testovací případy, budete muset použít kterýkoli z nich Selenium RC nebo WebDriver.
Co je to Selenium Dálkové ovládání (Selenium RC)?
Selenium RC byl vlajková loď testovacího rámce celku Selenium projekt na dlouhou dobu. Toto je první automatizovaný testování webu nástroj, který umožňuje uživatelům používat programovací jazyk, který preferují. Od verze 2.25.0 může RC podporovat následující programovací jazyky:
Co je WebDriver?
WebDriver se ukazuje jako lepší než Selenium IDE a Selenium RC v mnoha ohledech. Implementuje modernější a stabilnější přístup k automatizaci akcí prohlížeče. WebDriver, na rozdíl od Selenium RC, nespoléhá na JavaSkript pro Selenium Testování automatizace. Ovládá prohlížeč tak, že s ním přímo komunikuje.
Podporované jazyky jsou stejné jako v Selenium RC.
- Java
- C#
- PHP
- Python
- Perl
- Rubín
Co je to Selenium Mřížka?
Selenium Mřížka je nástroj používá se společně s Selenium RC spustit paralelní testy na různých počítačích a v různých prohlížečích najednou. Paralelní provádění znamená spuštění více testů najednou.
Funkce:
- umožňuje simultánní běh testů in více prohlížečů a prostředí.
- Šetří čas obrovsky.
- Využívá hub-and-nodes pojem. Hub funguje jako centrální zdroj Selenium příkazy každému připojenému uzlu.
Selenium Podpora prohlížeče a prostředí
Kvůli jejich architektonickým rozdílům, Selenium SDI, Selenium RC a WebDriver podporují různé sady prohlížečů a operačních prostředí.
Selenium IDE | webový ovladač | |
---|---|---|
Podpora prohlížeče | Mozilla Firefox a Chrome |
Google Chrome 12+ Firefox Internet Explorer 7+ a Edge Safari, HtmlUnit a PhantomUnit |
Operasystém | Windows, Mac OS X, Linux | Všechny operační systémy, kde lze spustit výše uvedené prohlížeče. |
Poznámka: Opera Ovladač již nefunguje
Jak si vybrat správně Selenium Nástroj pro vaši potřebu
Nástroj | Proč si vybrat? |
---|---|
Selenium IDE |
|
Selenium RC |
|
webový ovladač |
|
Selenium Mřížka |
|
Srovnání mezi Selenium a QTP (nyní UFT)
Quick Test Professional (QTP) je proprietární automatizovaný testovací nástroj dříve vlastněný společností Mercury interaktivní než jej Hewlett-Packard získal v 2006. Jeho pozdějším vlastníkem je MicroFocus a nástroj se přejmenuje na UFT one. The Selenium Tool Suite má mnoho výhod oproti QTP jak je popsáno níže –
Výhody a přínosy Selenium přes QTP
Selenium | QTP |
---|---|
open source, zdarma k použití, a zdarma. | Komerční. |
Vysoce roztažitelný | Omezené doplňky |
Může provádět testy napříč různé prohlížeče | Lze spustit pouze testy Firefox, Internet Explorer si chróm |
Podporuje různé operační systémy | Lze použít pouze v Windows |
Podporuje mobilní zařízení | QTP podporuje automatizaci testování mobilních aplikací (iOS a Android) pomocí řešení HP s názvem – HP Mobile Center |
Může provádět testy zatímco ο prohlížeč je minimalizován | Aby byla aplikace viditelná na ploše, potřebuje mít testovanou aplikaci |
Může provádět testy paralelně. | Lze spustit pouze paralelně, ale pomocí Quality Center, což je opět placený produkt. |
Výhody QTP oproti Selenium
QTP | Selenium |
---|---|
Lze testovat webové i desktopové aplikace | Může testovat pouze webové aplikace |
Dodává se s vestavěné úložiště objektů | Nemá vestavěné úložiště objektů |
Automatizuje rychleji než Selenium protože se jedná o plně funkční IDE. | Automatizuje pomaleji, protože nemá nativní IDE a pro vývoj lze použít pouze IDE třetí strany. |
Testování řízené daty je jednodušší provádět, protože má vestavěné globální a místní datové tabulky. | Testování řízené daty je těžkopádnější, protože se při nastavování hodnot pro vaše testovací data musíte spolehnout na schopnosti programovacího jazyka |
Má přístup k ovládacím prvkům v prohlížeči(jako je panel Oblíbené, Adresa, tlačítka Zpět a Vpřed atd.) | Nelze přistupovat k prvkům mimo testovanou webovou aplikaci |
Poskytuje profesionální Zákaznická podpora | Žádná oficiální uživatelská podpora není nabízena. |
Má nativní schopnost exportovat testovací data do externích formátů | Nemá žádnou nativní schopnost exportovat data za běhu do externích formátů |
Je vytvořena podpora parametrizace | Parametrizaci lze provést pomocí programování, ale je obtížné ji implementovat. |
Testovací zprávy se generují automaticky | Žádná nativní podpora pro generování testovacích/chybových zpráv. |
I když je zřejmé, že QTP má pokročilejší možnosti, Selenium převažuje QTP ve třech hlavních oblastech:
- Stát(protože Selenium je zcela zdarma)
- Flexibilita(kvůli řadě programovacích jazyků, prohlížečů a platforem, které může podporovat)
- Paralelní testování(něco, čeho je QTP schopen, ale pouze s použitím Quality Center)
Shrnutí
- Celá Selenium Software Testing Suite se skládá ze čtyř komponent:
- Selenium Idea Firefox a doplněk Chrome, který můžete použít pouze při vytváření relativně jednoduchých testovacích případů a testovacích sad.
- Selenium Dálkové ovládání, také známé jako Selenium 1, je první Selenium nástroj, který uživatelům umožňoval používat programovací jazyky při vytváření složitých testů.
- WebDriver, je novější průlom, který umožňuje vašim testovacím skriptům komunikovat přímo s prohlížečem, a tím jej ovládat z úrovně operačního systému.
- Selenium Grid je také nástroj, který se používá s Selenium RC pro provádění paralelních testů napříč různými prohlížeči a operačními systémy.
- Selenium RC a WebDriver byly sloučeny do formy Selenium 2.
- Selenium je z hlediska nákladů a flexibility výhodnější než Microfocus UFT One.