docker selenium tutorial
Úvod do kurzu Docker Selenium:
Jak bylo diskutováno v jednom z našich předchozí výukový program Selenová mřížka pomáhá spouštět naše testovací případy v různých operačních systémech a v různých prohlížečích.
Toto však Výukový program pro docker selen vysvětlí vám více o tom, co je Docker a jak jej stáhneme, nainstalujeme a integrujeme do selenové mřížky spolu s příslušnými screenshoty a toto obrazové znázornění vám také umožní rychle a snadno pochopit proces.
Co se naučíte:
- Co je Selenium Grid?
- Jeden praktický příklad využití selenové mřížky
- Co je Docker?
- Předpoklady pro výukový program Docker Selenium
- Stahování Dockeru pro Windows
- Nainstalujte Docker Images
- Spusťte selenový rozbočovač
- Spusťte uzly selenu
- Konfigurace testů selenu
- Závěr
- Doporučené čtení
Co je Selenium Grid?
Selenová mřížka pomáhá zvládnout počítač (rozbočovač) v distribuovaných testovacích případech mezi podřízenými stroji (uzly).
Když v určitém okamžiku implementujeme všechny testovací případy na jednom stroji, mohou existovat určitá omezení a někdy jeden jediný stroj nebude stačit na spuštění všech testovacích případů a v daném okamžiku se do role dostane selenová mřížka.
Jeden praktický příklad využití selenové mřížky
Před 2–3 lety Čína v této zemi zakázala produkty Google. V té době musely některé další společnosti, které vyvíjely webové systémy pro Čínu, testovat svůj webový systém s různými prohlížeči kromě produktů Google (Google Chrome), jako je Internet Explorer, Firefox, Opera atd.
V té době byla tedy selenová mřížka pro tyto společnosti velmi užitečná, protože mřížku selenu používaly pro spouštění testovacích případů v různých prohlížečích kromě Google Chrome.
Co je Docker?
Zjednodušeně lze Docker označit jako kontejner. Vývojáři nebo uživatelé Dockeru mohou do tohoto kontejneru vložit věci jako databáze, knihovny, závislosti a poté tyto databáze, závislosti a knihovny použít k vytváření, nasazování a spouštění aplikací.
Pomocí kontejnerů Docker můžete nastavit a zabalit softwarovou aplikaci s veškerým obsahem, který je vyžadován k sestavení této aplikace, jako jsou databáze, knihovny a další závislosti, a nakonec je můžete všechny odeslat jako jeden balíček.
Obvykle při konfiguraci selenové mřížky musíme hostovat více virtuálních strojů jako uzly a musíme každý jednotlivý uzel propojit s rozbočovačem. Také, když nastavíme normální mřížku, musíme si stáhnout soubor jar serveru Selenium a spustit tento soubor jar na každém počítači, ve kterém budeme nastavovat Selenium grid.
To je pro testery nákladný a někdy časově náročný úkol. Docker nám však pomáhá řešit náklady a časově náročné problémy.
Docker vynalezl Solomon Hykey a do softwarového průmyslu byl uveden v březnu 2013 jako open-source nástroj. V dnešní době vývojáři a systémoví inženýři používají Docker z několika důvodů.
V tomto kurzu použijeme Docker pro testování softwaru a automatizaci softwaru.
Předpoklady pro výukový program Docker Selenium
Nejprve musíme nastavit prostředí pro spuštění selenového skriptu.
Níže uvádíme několik věcí, které musíme zkontrolovat:
- Pokud se váš počítač skládá z JDK 1.7 nebo novější verze
- Jsou ve vašem místním počítači nainstalovány prohlížeče Chrome a Firefox?
- Selenium WebDriver a testovací případy založené na TestNG.
- Konfigurovaný soubor Testng.xml pro spuštění testovacích případů jako paralelní testy.
Stahování Dockeru pro Windows
Další věcí, kterou musíme udělat, je nainstalovat sadu nástrojů Docker. Ke spuštění příkazů Dockeru potřebujeme terminál pro rychlé spuštění Dockeru, který bude dodáván spolu s Dockerem. Proto musíme nainstalovat sadu nástrojů Docker.
Můžeme si stáhnout Docker Toolbox z libovolného webu, ale velmi bych vám doporučil stáhnout si Docker Toolbox z jejich oficiálních webových stránek: Přístavní dělník .
Během instalace panelu nástrojů Docker se zobrazí několik zaškrtávacích políček a k dokončení instalace je třeba zaškrtnout všechna tato políčka a nainstalovat panel nástrojů Docker. Pokud jste jej úspěšně nainstalovali, zobrazí se vám následující tři ikony nástrojů Docker.
Po instalaci panelu nástrojů Docker poklepejte a otevřete terminál rychlého startu Docker. Docker nakonfiguruje váš výchozí stroj s IP adresou: 192.168.99.100 a první konfigurace místního počítače bude nějakou dobu trvat. Proto musíte počkat, až se zobrazí následující okno.
Docker je úspěšně nakonfigurován!
Nainstalujte Docker Images
Zatímco konfigurujeme selenovou mřížku (bez Dockeru), musíme také nakonfigurovat rozbočovač a uzly selenu (prohlížeče).
Stejně jako normální mřížka, když nakonfigurujeme selenovou mřížku pomocí Dockeru, musíme nainstalovat uzly hubu a prohlížeče do našeho kontejneru Docker a později, můžeme spustit hub a uzly z tohoto kontejneru Docker.
Proto první věcí je instalace obrazů rozbočovače a uzlů do Dockeru.
Zpočátku musíme nainstalovat pět obrázků, abychom mohli spustit náš test pomocí Dockeru.
- Obrázek rozbočovače selenu
- Obrázek selenového uzlu-firefox
- Selenový uzel-chromovaný obrázek
- Selenium node-firefox-debug obrázek
- Obrázek ladění uzlu selenu-chromu
Další otázkou bude, jak tyto obrázky najít. Abychom tyto obrázky našli, přejdeme k Docker Hub a vyhledejte tyto obrázky podle názvu a můžete také zadat název obrázku do vyhledávací lišty, jak je uvedeno níže.
Jakmile zadáte jméno a stisknete klávesu Enter, uvidíte níže uvedené okno.
Toto okno zobrazuje všechna úložiště obrázků, která máme pro selenový rozbočovač. Zde musíte kliknout na obrázek, který má největší počet stažení, a pomůže nám spustit náš kód bez jakýchkoli chyb. Jakmile kliknete na tento obrázek, zobrazí se další okno, jako je okno uvedené níže.
(Poznámka:Kliknutím na libovolný obrázek zobrazíte zvětšené zobrazení)
Toto okno vám poskytne všechny informace o obrázku (obrázek rozbočovače Selenium) a poskytne vám všechny příkazy související s tímto obrázkem (obrázek rozbočovače Selenium). Tady je příkaz Docker pull příkazem k instalaci tohoto obrazu Dockeru do vašeho kontejneru.
Zpočátku tedy musíme nainstalovat obrázek rozbočovače Selenium. Chcete-li to provést, musíte zkopírovat příkaz Docker pull a vložit jej do terminálu rychlého spuštění Docker, jak je znázorněno níže.
Po zadání každého příkazu do terminálu pro rychlé spuštění Dockeru musíte nějakou dobu počkat, aby se obrázky stáhly do vašeho kontejneru Dockeru, a doba čekání zcela závisí na rychlosti vašeho síťového připojení. Někdy některé obrázky selžou během instalace nebo stahování, a pokud k tomu dojde, nejlepší je udělat tento obrázek znovu nainstalovat, dokud se terminál neukáže, že instalace byla dokončena.
Dalším důležitým faktorem je, že před dokončením stahování prvního příkazu byste neměli psát druhý příkaz. Stahování i instalace selže.
Stejně tak můžete prohledat a nainstalovat všech pět výše zmíněných obrázků do kontejneru Docker.
V následující tabulce jsou uvedeny všechny příkazy pro vytažení, které musíte zadat do terminálu Quickstart a nainstalovat.
obraz | Příkaz |
---|---|
Rozbočovač selenu | docker pull selen / náboj |
Uzel Firefoxu selenu | docker pull selen / node-firefox |
Uzel chromu selenu | docker pull selen / node-chrome |
Ladění selenového Firefoxu | docker pull selen / node-firefox-debug |
Ladění chromu selenu | docker pull selen / node-chrome-debug |
Po stažení všech obrázků do kontejneru je můžete zkontrolovat pomocí následujícího příkazu.
Docker Images
Nyní jsou všechny obrázky úspěšně staženy. Proto můžeme tyto obrázky spouštět jeden po druhém.
Spusťte selenový rozbočovač
V normální selenové mřížce (bez Dockeru) je prvním krokem spuštění selenového rozbočovače. Chcete-li spustit selenový rozbočovač z kontejneru Docker, máme speciální příkaz, který je
docker run -d -p 4444: 4444 –name selenium-hub selen / hub
Jakmile tento příkaz zadáte a zadáte do svého terminálu, rozbočí se Selenium hub z kontejneru Docker. To, zda se selenový rozbočovač spustil, můžete ověřit kontrolou následujícího odkazu ve svém prohlížeči: http://192.168.99.100:4444/grid/console
Tady na tomto obrázku je 192.168.99.100 vaše IP adresa
Spusťte uzly selenu
Je spuštěn selenový rozbočovač a dále musíme spustit uzly z kontejneru Docker, musíme spustit chromový uzel a uzel Firefox. Nainstalovali jsme oba obrázky uzlů do našeho kontejneru Docker v procesu instalace.
Začněme oba uzly jeden po druhém. Nezapomeňte také, že můžete spustit libovolný počet uzlů. Zde jsem použil pouze dva uzly (chromový uzel a uzel Firefox).
Příkaz ke spuštění chromového uzlu z Dockeru: docker run -d –link selenium-hub: rozbočovač selen / uzel-chrom
Příkaz ke spuštění uzlu firefox z Dockeru: docker run -d –link selenium-hub: rozbočovač selen / node-firefox
bublinové třídění pole c ++
Po spuštění uzlu Chrome a uzlu Firefoxu musíme spustit také uzel ladění Chrome a uzel ladění Firefoxu. Spustíme a nainstalujeme chromový ladicí uzel a ladicí uzel Firefoxu pro demonstrační účely a na konci tohoto tutoriálu spustím testovací případ v obou ladicích uzlech pomocí prohlížeče VNC (Virtual Network Computing).
Pro prohlížeč VNC potřebujeme ladicí uzel firefoxu a chrome. Prohlížeč VNC (Virtual Network Computing) nám pomáhá zobrazit různé akce prohlížeče současně na jednom počítači.
Příkaz ke spuštění uzlu ladění chromu z Dockeru: docker run -d –P –link selenium-hub: rozbočovač selen / node-chrome-debug
Příkaz ke spuštění uzlu ladění Firefoxu z Dockeru: docker run -d –P –link selenium-hub: rozbočovač selen / node-firefox-debug
Terminál pro rychlé spuštění Dockeru může někdy oba příkazy ignorovat. Pokud váš terminál pro rychlé spuštění Dockeru tyto dva příkazy ignoruje, můžete alternativně použít níže uvedené příkazy ke spuštění režimu ladění prohlížečů Chrome a Firefox.
Alternativa 01
docker run –d –P –link selenium-hub: rozbočovač selen / node-chrome-debug
docker run –d –P –link selenium-hub: rozbočovač selen / node-firefox-debug
Alternativa 02
docker run –d –link selenium-hub: rozbočovač selen / node-chrome-debug
docker run –d –link selenium-hub: rozbočovač selen / node-firefox-debug
Po spuštění uzlů i uzlů ladění Chrome a Firefox uzlů a chromu a Firefoxu můžete svůj prohlížeč obnovit a najdete Firefox a chromový uzel začínající od vašeho kontejneru.
Pokud během instalace nebo běhu obrázků dojde k jakékoli chybě, je nejlepší znovu nainstalovat a spustit konkrétní obrázek znovu z Dockeru.
Nyní jsme dokončili všechny kroky na straně kontejneru Docker. Dále musíme věnovat pozornost selenovému skriptu a prohlížeči VNC pro provedení naší demonstrace.
Nejprve musíme identifikovat čísla portů spuštěných ladicích uzlů chrome a firefox. Protože požadujeme tato čísla portů pro prohlížeč VNC.
Chcete-li zjistit čísla portů chromu a uzlu Firefoxu, můžete do terminálu pro rychlý start zadat následující příkaz a ve sloupci PORTS uvidíte všechny obrázky Dockeru a běžící porty každého obrázku.
přístavní dělník ps - a
Uzly | Spouštění čísel portů |
---|---|
Ladicí uzel Chrome | 32771 |
Uzel ladění Firefoxu | 32772 |
Nyní známe čísla portů ladicích uzlů chromu a firefoxu, které jsou spuštěny, abychom mohli spustit oba prohlížeče pomocí prohlížeče VNC.
Proto musíme postupovat podle níže uvedených kroků:
1) Stáhněte si prohlížeč VNC z jejich oficiálních stránek: Stáhněte si VNC
dva) Spusť to
3) Zadejte adresu URL rozbočovače a číslo portu každého režimu ladění, jak je znázorněno níže, a klikněte na tlačítko připojení
HUB URL : ČÍSLO PŘÍSTAVU
- Pro prohlížeč Chrome 192.168.99.100 : 32771
4) Po kliknutí na tlačítko připojení si prohlížeč VNC vyžádá heslo. Ve výchozím nastavení je heslo prohlížeče VNC tajný , zadejte heslo jako tajný a klikněte na Ok a uvidíte okno pro prohlížeč Chrome.
5) Podobně musíte udělat totéž pro prohlížeč Firefox pomocí prohlížeče VNC. Otevřete aplikaci VNC na místním počítači a použijte číslo běžícího portu Firefoxu s URL hubu a klikněte na tlačítko připojení.
- Pro prohlížeč Firefox 192.168.99.100 : 32772
Opět uvidíte další okno otevírání prohlížeče Firefox.
Nyní se oba prohlížeče zobrazí v prohlížeči VNC. Naším dalším úkolem je napsat selenový skript a spustit jej.
Konfigurace testů selenu
Jako obvykle můžeme vytvořit testovací skript, který je relevantní pro selenovou mřížku, kroky k vytvoření skriptu selenové mřížky jsou popsány v našem výuka selenové mřížky .
Zde je skript, který jsem vytvořil, jedná se o normální selenový skript a vytvořil jsem dva testy a nastavil jsem požadovanou schopnost těchto testů na dva různé prohlížeče, které jsme vytvořili.
Také jsem změnil svůj soubor XML, abych test spustil paralelně.
Dokončili jsme všechny kroky a nyní můžete spustit test. Po spuštění testu uvidíte, jak test běží ve dvou různých prohlížečích, které jsme vytvořili pomocí Dockeru. Prohlížeč VNC ukáže, jak prohlížeč přejde na každý web současně.
Závěr
Pokud máte velký počet testovacích případů, můžete k urychlení provádění testovacích případů použít selenovou mřížku. Někdy musíme vaše testovací případy spouštět a testovat v různých operačních systémech a někdy musíte testovací případy kontrolovat také v různých prohlížečích. Při takových příležitostech používáme selenovou mřížku.
Konfigurace selenové mřížky může být někdy nákladný a časově náročný proces, protože potřebujeme více strojů. V takových případech bude nejlepší volbou použít Selenium Grid s Dockerem.
Doporučené čtení
- Výukový program selenové mřížky: Nastavení a příklad testování mezi prohlížeči
- Cucumber Selenium Tutorial: Cucumber Java Selenium WebDriver Integration
- Úvod do selenu WebDriver - Selenium Tutorial # 8
- Výukové programy pro zatmění do hloubky pro začátečníky
- Efektivní scénáře selenu a řešení potíží - Scénář selenu č. 27
- Ladění selenových skriptů pomocí protokolů (výuka Log4j) - výuka selenu č. 26
- 30+ nejlepších návodů na selen: Naučte se selen se skutečnými příklady
- Úvod do rámce JUnit a jeho použití v selenovém skriptu - výuka selenu č. 11