Articles

Co je selen? Úvod do testování automatizace selenu

co je selen?

selen je bezplatný (open-source) automatizovaný testovací rámec používaný k ověření webových aplikací v různých prohlížečích a platformách. K vytvoření testovacích skriptů selenu můžete použít více programovacích jazyků, jako je Java, C#, Python atd. Testování prováděné pomocí nástroje pro testování selenu se obvykle označuje jako testování selenu.

Selenium Software není jen jediný nástroj, ale sada softwaru, každý kus obstarávat různé Selenium QA testování potřeb organizace. Zde je seznam nástrojů,

  • Selen Integrované Vývojové Prostředí (IDE)
  • Selen Dálkové Ovládání (RC)
  • WebDriver
  • Selenium Grid

Úvod do Selen
Úvod do Selen

V okamžiku, Selenium RC a WebDriver jsou sloučeny do jediného rámce na formě Selenu 2. Selen 1, mimochodem, odkazuje na selen RC.

Klikněte zde, pokud video není přístupné

V tomto kurzu se naučíte:

  • Co je Selen?
  • kdo vyvinul selen?
  • Stejný Původ, Politické téma
  • Narození Selen Dálkové Ovládání (Selenium RC)
  • Narození Selenium Grid
  • Narození Selen IDE
  • Narození WebDriver
  • Narození Selen 2
  • Takže, Proč Název Selen?
  • Stručný Úvod Selen IDE
  • Stručný Úvod Selen Dálkové Ovládání (Selenium RC)
  • Stručný Úvod WebDriver
  • Selenium Grid
  • Poznámka: v Prohlížeči a Prostředí Podpora
  • Jak Vybrat ten Správný Selen Nástroj pro Vaše potřeby
  • Srovnání mezi Selen a QTP(nyní UFT)
  • Výhody QTP nad Selen

, Který vyvinul Selen?

protože selen je sbírka různých nástrojů, měl také různé vývojáře. Níže jsou klíčové osoby, které učinil významné příspěvky k Selenu Projektu

Úvod do Selen

Především, Selen byl vytvořen Jasonem Huggins v roce 2004. Inženýr v ThoughtWorks pracoval na webové aplikaci, která vyžadovala časté testování. Poté, co si uvědomil, že opakující se Manuální Testování jejich aplikace stále více a více neefektivní, on vytvořil JavaScript program, který by automaticky ovládat prohlížeč akcí. Pojmenoval tento program jako “ JavaScriptTestRunner.“

Vidí potenciál v této myšlence pomoci automatizovat jiných webových aplikací, on dělal JavaScriptRunner open-source, který byl později re-pojmenovaný jako Selen Jádro.

Stejný Původ, Politické téma

Stejný Původ politika zakazuje JavaScript kódu v přístupu k prvků z domény, který se liší od místa, kde byla zahájena. Příklad HTML kódu v www.google.com používá program JavaScript “ randomScript.js“. Stejné zásady původu povolí pouze randomScript.js pro přístup k stránky v rámci google.com jako google.com/mail, google.com/login nebo google.com/signup. Nicméně, to nemůže získat přístup stránky z různých míst, jako jsou yahoo.com/search nebo guru99.com, protože patří do různých domén.

Úvod do Selen

To je důvod, proč před Selenium RC, testery potřebné k instalaci lokální kopie obou Selen Jádro (JavaScript program) a webový server obsahující webové aplikace testována, takže by patřit do stejné domény

Narození Selen Dálkové Ovládání (Selenium RC)

Úvod do Selen

Bohužel; testery pomocí Selenium Core musel nainstalovat celou aplikaci v rámci testu a webový server, na jejich vlastní místní počítače z důvodu omezení same origin policy. Takže další ThoughtWork inženýr, Paul Hammant, rozhodl se vytvořit server, který bude fungovat jako HTTP proxy, aby „trik“ prohlížeče do podezření, že Selen Jádra a webové aplikace testované pocházet ze stejné domény. Tento systém se stal známým jako selenové dálkové ovládání nebo Selen 1.

Narození Selenium Grid

Úvod do Selen

Selenium Grid byl vyvinut Patrick Lightbody, aby řešily potřebu minimalizace provádění testu krát tolik, jak je to možné. Zpočátku nazval systém “ hostitelem QA.“Byl schopen zachytit screenshoty prohlížeče během významných fází a také odesílat příkazy selenu na různé stroje současně.

Narození Selen IDE

Úvod do Selen

Shinya Kasatani Japonska vytvořil Selen IDE, rozšíření pro Firefox, které mohou automatizovat prohlížeče prostřednictvím záznamu a přehrávání funkce. Přišel s touto myšlenkou, aby dále zvýšil rychlost při vytváření testovacích případů. V roce 2006 daroval selen IDE projektu Selenium.

Narození WebDriver

Úvod do Selen Simon Stewart vytvořil WebDriver circa 2006, kdy prohlížečů a webových aplikací se stává silnější a více omezující, s JavaScript programy, jako je Selen Jádro. Byl to první multiplatformní testovací rámec, který mohl ovládat prohlížeč z úrovně OS.

Narození Selen 2

V roce 2008, celý Selen Tým se rozhodl sloučit WebDriver a Selenium RC tvořit více mocný nástroj s názvem Selen 2, s WebDriver být jádro. V současné době se Selenium RC stále vyvíjí, ale pouze v režimu údržby. Většina úsilí projektu Selenium je nyní zaměřena na selen 2.

tak proč název selen?

Název selen pochází z vtipu, který Jason jednou zlomil svému týmu. Během vývoje selenu byl populární další automatizovaný testovací rámec vyrobený společností Mercury Interactive (Ano, společnost, která původně vyráběla QTP, než ji získala HP). Vzhledem k tomu, selen je dobře známý protijed na otravu rtutí, Jason navrhl, že jméno a jeho spoluhráči ho vzal. Tak jsme tento rámec nazvali až do současnosti.

Původ jména Selenu rámec

Krátký Úvod Selen IDE

Selen Integrované Vývojové Prostředí (IDE) je nejjednodušší v rámci Selen suite a je nejjednodušší se učit. Jedná se o plugin Firefox, který můžete nainstalovat tak snadno, jak můžete s jinými pluginy. Vzhledem ke své jednoduchosti by však selen IDE měl být používán pouze jako prototypovací nástroj. Pokud chcete vytvořit pokročilejší testovací případy, budete muset použít Selenium RC nebo WebDriver.

Klady a Zápory Selen IDE

Krátký Úvod Selen Dálkové Ovládání (Selenium RC)

Selenium RC byla vlajková loď testování rámci celé Selen projekt na dlouhou dobu. Toto je první automatizovaný webový testovací nástroj, který uživatelům umožnil používat programovací jazyk, který preferují. Od verze 2.25.0 může RC podporovat následující programovací jazyky:

  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

Klady a Zápory Selenium RC

Stručný Úvod WebDriver

WebDriver, ukáže se být lepší, než jak Selenium IDE a Selenium RC v mnoha aspektech. Implementuje modernější a stabilnější přístup při automatizaci akcí prohlížeče. WebDriver, na rozdíl od Selenium RC, nespoléhá na JavaScript pro testování automatizace selenu. Ovládá prohlížeč přímou komunikací s ním.

Podporované jazyky jsou stejné jako v Selenium RC.

  • Java
  • C#
  • PHP
  • Python
  • Perl
  • Ruby

Klady a Zápory Selen Webdriver

Selenium Grid

Selenium Grid je nástroj, který slouží spolu s Selenu RC spustit paralelní testy různých strojů a různých prohlížečích, všechny ve stejnou dobu. Paralelní provedení znamená spuštění více testů najednou.

funkce:

  • umožňuje současné spuštění testů ve více prohlížečích a prostředích.
  • šetří čas enormně.
  • využívá koncept hub-and-nodes. Rozbočovač funguje jako centrální zdroj příkazů selenu pro každý uzel, který je k němu připojen.

Poznámka: v Prohlížeči a Prostředí Podpora

Protože jejich architektonické rozdíly, Selenium IDE, Selenium RC, a WebDriver podporu různých sad prohlížeče a operačního prostředí.

Selenium IDE WebDriver
Browser Support Mozilla Firefox Internet Explorer versions 6 to 11, both 32 and 64-bit
Microsoft Edge version 12.10240 & above ( partial support some functionalities under development)
Firefox 3.0 and above
Google Chrome 12.0. and above
Opera 11.5 and above
Android – 2.3 a vyšší pro telefony a tablety
(zařízení & emulátory)
iOS 3+ pro telefony (zařízení & emulátory) a 3.2+ pro tablety (zařízení & emulátory)
HtmlUnit 2.9 a výše
Operační Systém Windows, Mac OS X, Linux Všechny operační systémy, kde prohlížečů výše může spustit.

Poznámka: Selenium WebDriver je označován jako nástupce Selenium RC, který byl zastaralý & oficiálně oznámeno SeleniumHQ.

Jak Vybrat ten Správný Selen Nástroj pro Vaše potřeby

Nástroj
Proč Si Vybrat?

Selenium IDE

  • To learn about concepts on automated testing and Selenium, including:
  • Selenese commands such as type, open, clickAndWait, assert, verify, etc.
  • Locators such as id, name, xpath, css selector, etc.
  • Executing customized JavaScript code using runScript
  • Exporting test cases in various formats.
  • vytvořit testy s malou nebo žádnou předchozí znalostí v programování.
  • Chcete-li vytvořit jednoduché testovací případy a testovací sady, které můžete později exportovat do RC nebo WebDriver.
  • Chcete-li otestovat webovou aplikaci pouze proti Firefoxu a Chrome.

Selenium RC

  • navrhnout test pomocí více expresivní jazyk, než Selenese
  • spustit test proti různých prohlížečích (kromě HtmlUnit) na různých operačních systémech.
  • nasadit testy v různých prostředích pomocí Selenium Grid.
  • Chcete-li otestovat aplikaci proti novému prohlížeči, který podporuje JavaScript.
  • testovat webové aplikace se složitými scénáři založenými na Ajaxu.

WebDriver

  • používat určitý programovací jazyk při tvorbě testovací případ.
  • testovat aplikace, které jsou bohaté na funkcionality AJAX bázi.
  • pro provedení testů v prohlížeči HtmlUnit.
  • Chcete-li vytvořit vlastní výsledky testů.

Selenium Grid

  • spustit Selenium RC skriptů v různých prohlížečích a operačních systémů současně.
  • Chcete-li spustit obrovskou testovací sadu, která musí být dokončena co nejdříve.

Srovnání mezi Selen a QTP(nyní UFT)

Quick Test Professional(QTP) je proprietární automatizovaný testovací nástroj, dříve ve vlastnictví společnosti Mercury Interactive před tím, než získal Hewlett-Packard v roce 2006. Selen Nástroj Apartmá má mnoho výhod oproti QTP, jak je uvedeno níže –

Výhody a Přínosy Selen nad QTP

Selen
QTP
Open source, zdarma k použití, a zdarma. Komerční.
Vysoce rozšiřitelný Omezené add-ons
Lze spustit testy v různých prohlížečích Lze spustit pouze testy ve Firefoxu, Internet Explorer a Chrome
Podporuje různé operační systémy Může být použit pouze v systému Windows
Podpora mobilních zařízení QTP Podporuje Mobilní aplikace test automation (iOS & Android) pomocí řešení s názvem HP – HP Mobile Center
Může provést testy, zatímco prohlížeč je minimalizován musí mít aplikace pod test, který má být viditelný na ploše
, může provádět testy paralelně. lze provádět pouze paralelně, ale pomocí Centra kvality, které je opět placeným produktem.

Advantages of QTP over Selenium

Advantages of QTP over Selenium
QTP
Selenium
Can test both web and desktop applications Can only test web applications
Comes with a built-in object repository Has no built-in object repository
automatizuje rychleji než selen, protože se jedná o plně vybavený IDE. automatizuje pomaleji, protože nemá nativní IDE a pro vývoj lze použít pouze IDE třetích stran
testování založené na datech je jednodušší, protože má vestavěné globální a místní datové tabulky. Data-driven testování je těžkopádnější, protože budete muset spoléhat na programovací jazyk, je funkce pro nastavení hodnoty pro testovací data
přístup k ovládací prvky v prohlížeči(jako je například panel Oblíbené položky, panel Adresa, tlačítka Zpět a Vpřed, atd. nelze přistupovat k prvkům mimo testovanou webovou aplikaci
poskytuje profesionální zákaznickou podporu žádná oficiální uživatelská podpora není nabízena.
Má nativní schopnost exportu zkušebních dat do externích formátů Nemá nativní schopnost exportovat runtime dat do externích formátů
Parametrizace Podpora je postavena Parametrizace může být provedeno přes programování, ale je obtížné realizovat.
zprávy o zkouškách jsou generovány automaticky žádná nativní podpora pro generování zpráv o testech / chybách.

i Když jasně, QTP má více pokročilých funkcí, Selen převáží QTP ve třech hlavních oblastech:

  • Náklady(protože Selen je zcela zdarma)
  • Flexibilita(protože z mnoha programovací jazyky, prohlížeče, platformy, to může podporovat)
  • Paralelní testování(něco, co QTP je schopna, ale pouze s použitím Quality Center)

Shrnutí

  • celý Selen Testování Software Suite se skládá ze čtyř částí:
  • Selenium IDE, doplněk Firefoxu, který můžete použít pouze při vytváření relativně jednoduchých testovacích případů a testovacích sad.
  • Selenium Remote Control, také známý jako Selen 1, což je první Selen nástroj, který umožnil uživatelům používat programovací jazyky při vytváření komplexní zkoušky.
  • WebDriver, novější průlom, který umožňuje, aby vaše testovací skripty ke komunikaci přímo do prohlížeče, čímž se ovládání z OS úrovni.
  • Selenium Grid je také nástroj, který se používá s Selenium RC provádět paralelní testy v různých prohlížečích a operačních systémech.
  • Selenium RC a WebDriver byly sloučeny za vzniku selenu 2.
  • selen je výhodnější než QTP z hlediska nákladů a flexibility. Umožňuje také spouštět testy paralelně, na rozdíl od QTP, kde můžete provádět testy pouze postupně.