Selen

Loutkář VS Selenium

Loutkář VS Selenium
Dnes, pokud jde o automatizované testování webu, se objevují Puppeteer a Selenium. Jedním z hlavních důvodů, proč jsou dobře známé, je jejich schopnost spouštět bezhlavé prohlížeče. Než tedy v článku pokračujeme, podívejme se rychle na to, co jsou bezhlavé prohlížeče a jaké jsou jejich výhody.

Zjednodušeně řečeno, bezhlavé prohlížeče jsou prohlížeče, které lze použít k testování použitelnosti webových stránek a provádění interakcí prohlížeče, jako byste to udělali s běžným prohlížečem. Jediným rozdílem je, že zde není žádné grafické uživatelské rozhraní (GUI) a obvykle se spouští z terminálu.

Bezhlavé prohlížeče:

Nyní, když jsme pro oba nástroje znali hlavní faktor, můžeme pokračovat.

Loutkář

Puppeteer je knihovna uzlů od společnosti Google, která poskytuje jednoduché rozhraní API pro ovládání bezhlavého prohlížeče Chrome. Prostřednictvím Puppeteeru lze snadno provádět běžné úkoly, jako je zadávání vstupů, kliknutí na tlačítka, testování použitelnosti webových stránek a dokonce i škrábání webu.

Puppeteer je oficiální z týmu Chrome a používá Chrome Remote Debug Protocol, stejně jako bychom to našli u Chrome Devtools. Tato knihovna podporuje moderní syntaxi JavaScriptu dostupnou v prohlížeči Google Chrome.

Založit

Instalace a zahájení používání Puppeteeru je velmi snadné. Jelikož Puppeteer je knihovna uzlů, lze ji nainstalovat pomocí npm nářadí.

Instalaci lze provést pomocí níže uvedeného příkazu:

NPM i loutkář

Spuštěním výše uvedeného příkazu nainstalujete Puppeteer. Očekává se také stažení nedávné verze Chromia, která by fungovala s API.

Velikost Chromu se liší podle operačního systému:

Po instalaci hry Puppeteer můžete zjistit více informací o tom, jak začít, a také si můžete prohlédnout další příklady kódu.

Funkce

Zatímco schopnost loutkáře spouštět bezhlavý prohlížeč je jednou z funkcí, která mu získala určitou slávu, není to jediná funkce, díky níž je úžasná. Puppeteer má také několik dalších funkcí, které jsou užitečné, pojďme se na některé z nich rychle podívat.

Snadná automatizace:

I když existují další nástroje, které lze použít pro automatizaci webu, Puppeteer vychází. To je způsobeno skutečností, že funguje pouze pro jeden prohlížeč, kterým je prohlížeč Headless Chrome, a proto provádí úkoly automatizace webu co nejúčinnějším způsobem. Puppeteer také dobře funguje s populárními knihovnami pro testování jednotek, jako jsou Mocha a Jasmine.

Testování obrazovky:

Toto je zásadní funkce pro každou úlohu automatizovaného testování webu. Screenshoty jsou důležité a pomáhají sledovat výsledky interakcí s prvky na webové stránce. Knihovny, jako je Puppeteer-screenshot-tester, také existují v Puppeteer, který poskytuje schopnost porovnávat screenshoty generované při testování. Kromě generování screenshotů testů lze soubory PDF také generovat z testovaných webových stránek v loutkáři.

Testování výkonu:

Chrome poskytuje nástroje DevTools, které umožňují záznam časové osy výkonu webových stránek, a Puppeteer to také využívá. S Puppeteerem lze zachytit stopy časové osy webových stránek, aby se prozkoumaly problémy s výkonem. Vzhledem k tomu, že Puppeteer ovládá API na vysoké úrovni přes Chrome Developers Tools Protocol, dává uživatelům možnost ovládat servisní pracovníky a testovat ukládání do mezipaměti webů.

Škrábání webu:

Diskuse o funkcích by nebyla dokončena bez uznání schopnosti Puppeteer použít pro účely škrábání webu. Naučit se používat Puppeteer jako webovou škrabku je docela snadné, podívejte se do dokumentace API.

Profesionálové

  1. Funguje dobře pro vizuální testování.
  2. Skvělé pro testování typu end-to-end.
  3. Rychlý ve srovnání se selenem.
  4. Může pořizovat snímky obrazovky webových stránek.
  5. Větší kontrola nad testy prostřednictvím prohlížeče Chrome.
  6. Lze otestovat režim offline.

Nevýhody

  1. Podporuje pouze JavaScript (uzel)
  2. Podporuje pouze Chrome

Selen

Selenium je výkonný rámec pro testování webu, který má schopnost automatizovat webové aplikace pro účely testování. Selenium je také známé pro svou schopnost automatizovat úkoly webové správy.

Selen se dělí na dvě části; Selenium WebDriver pro vytváření výkonných automatizačních sad a testů založených na prohlížeči a Selen IDE pro vytváření skriptů pro rychlou reprodukci chyb.

Nezapomínáme, že Selenium také podporuje bezhlavé prohlížeče, jak je vidět u Puppeteer.

Založit

Na rozdíl od Puppeteeru není nastavení selenu jednoduché. Selenium podporuje mnoho jazyků a různých prohlížečů, proto je třeba se o tyto možné podmínky postarat.

Níže jsou uvedeny odkazy na oficiální výukové programy, jak nastavit vazby selenu pro různé jazyky.

Kromě podpory různých jazyků podporuje Selenium také více prohlížečů. Na rozdíl od Puppeteeru, který instaluje Chromium během instalace, budete možná muset nainstalovat webové ovladače pro webový prohlížeč podle vašeho výběru.

Zde jsou odkazy na webové ovladače pro Mozilla Firefox a Google Chrome.

Chcete-li použít i selenové IDE, existuje také pro více prohlížečů. Zde jsou odkazy na Selenium IDE pro Mozilla Firefox a Google Chrome.

Funkce

Díky své schopnosti pracovat s bezhlavými prohlížeči je nepochybně nejoblíbenějším nástrojem pro automatizaci webu, ale díky výkonným funkcím je výkonnější.

Vícejazyčná podpora:

Toto je jedna velmi důležitá funkce selenu. Díky vícejazyčné podpoře může více vývojářů používat tento nástroj pro své úlohy testování automatizace webu.  I když si člověk může myslet, že jeho vícejazyčná podpora by to zpomalila, selen stále běží dobrou rychlostí, protože spuštění serveru ve webovém ovladači není nutné.

Podpora více platforem:

Stejným způsobem není selen omezen ani jazykovou bariérou, není omezen ani bariérou na platformě. Není novinkou, že se webové aplikace na různých platformách chovají odlišně. Selen dává testerům možnost testovat napříč hlavními webovými prohlížeči a zajistit tak bezproblémový uživatelský zážitek uživatelům napříč různými prohlížeči.  Asides browsers, Selenium can also be used to test on mobile such as Android, iOS, Windows, Blackberry apps.

Nahrávací nástroj:

Se Selenium IDE je snadné zaznamenávat testy automatizace webu. Selenium IDE umožňuje testerům využívat schopnost záznamu, podporu automatického doplňování a schopnost navigovat v příkazech. Nahrávací nástroj přestal ve Firefoxu 55 a novějších verzích fungovat, existují však i jiné doplňky ve Firefoxu, které slouží stejnému účelu. Schopnost zaznamenávat testy proto zůstává hlavním selenovým prvkem.

Škrábání webu:

Zatímco selen se používá k testování webových aplikací, je také dobře škálovatelný jako webová škrabka. Selen lze použít ke škrábání webových stránek AJAX a nejtěžších webových stránek k škrábání, pokud rozumíte struktuře HTML. Můžete se podívat na tento tutoriál o používání selenu pro škrábání webu pomocí Pythonu.

Profesionálové

  1. Podpora více platforem.
  2. Vícejazyčná podpora.
  3. Schopnost zaznamenávat testy.
  4. Může také pořizovat snímky obrazovky.
  5. Obrovská komunita uživatelů.

Nevýhody

  1. Pomalý ve srovnání s Puppeteerem.
  2. Omezená kontrola nad testy ve srovnání s Puppeteer.

Závěr

Pokud vás netrápí testování webových stránek na jiných platformách kromě prohlížeče Chrome, pak s Puppeteerem pracujete dobře, pokud jste schopni pracovat s JavaScriptem (Node). Pokud se však zajímáte o více platforem, pak je používání selenu samozřejmostí. Když mluvíme o svých schopnostech škrábat web, oba nástroje jsou venku. Je třeba poznamenat, že Puppeteer mohl být rychlejší než Selenium.

Jakýkoli nástroj, který si na konci dne vyberete, by měl být v pořádku, prostě si užívejte psaní automatizačních skriptů.

Hry Výukový program Shadow of the Tomb Raider pro Linux
Výukový program Shadow of the Tomb Raider pro Linux
Shadow of the Tomb Raider je dvanáctý přírůstek do série Tomb Raider - série akčních adventur vytvořená Eidosem Montrealem. Tato hra byla docela dobře...
Hry Jak zvýšit FPS v Linuxu?
Jak zvýšit FPS v Linuxu?
FPS znamená Snímků za sekundu. Úkolem FPS je měřit snímkovou frekvenci při přehrávání videa nebo herních výkonech. Jednoduše řečeno, počet nepřerušova...
Hry Nejlepší hry Oculus App Lab
Nejlepší hry Oculus App Lab
Pokud jste vlastníkem náhlavní soupravy Oculus, musíte mít informace o bočním nakládání. Sideloading je proces instalace neukládaného obsahu do náhlav...