Puppeteer Web Scraping and Test Automation - an Excellent Learning Guide of Puppeteer Tutorial 3

Puppeteer získává v současnosti více pozornosti jako nástroj pro škrábání webu. Díky jednoduchosti, dostupnosti jako open-source nástroje a schopnosti vyvíjet jednostránkovou aplikaci si Puppeteer získává popularitu. Než se začneme učit na nástroji Puppeteer web scraping, měli bychom mít základní znalosti o příkazovém řádku, Javascriptu a struktuře HTML DOM. The Výukový program pro loutkáře byl rozdělen do několika článků, které jsou uvedeny v níže uvedeném obsahu.

Výukový program pro loutkáře

Výukový program Tosca č. 1: Loutkář - přehled

Tosca konzultace # 2: Proměnné prostředí loutkáře

Tosca konzultace # 3: Přehled škrábání webu Puppeteer a Puppeteer Test Automation

Tosca konzultace # 4: Nainstalujte si Puppeteer 

V tomto článku z Výukový program pro loutkáře, probereme Puppeteer Web Scraping s příkladem a přehled automatizace Puppeteer Test. 

Škrábání webu loutkáře

Proces extrakce dat z libovolných webových stránek se nazývá web scraping. Web scraping má dva kroky. Nejprve načte webovou stránku a poté extrahuje data. Po extrakci dat jej můžeme použít pro libovolné API nebo jej uložit do souboru CSV. 

Puppeteer je jedním z nejlepších nástrojů na podporu škrábání webů v prohlížeči Google Chrome nebo Chromium. Škrábání z loutkářského webu je podrobně vysvětleno v následujícím příkladu - 

Příklad základního škrábání webu loutkáře:

Krok 1# Loutkář pracuje na knihovně Node JS. Prvním krokem je tedy zahrnout knihovnu loutkářů před napsáním skriptu pro škrábání webu.

const puppeteerObj = require("puppeteer");

Krok 2# Po zahrnutí třídy Puppeteer musíme napsat asynchronní funkci pomocí klíčového slova await. Je to nutné, protože Puppeteer používá sliby. Poté zavoláním metody Puppeteer.launch () vyvoláte prohlížeč a voláním metody newPage () vytvoříte instanci webové stránky.

const browserWeb = await puppeteerObj.launch();
const pageWeb = await browserWeb.newPage();

Krok 3# Nyní zavolejte metodu page.goto () a zadejte adresu URL požadovaného webu.

await pageWeb.goto("https://lambdageeks.com/");

Krok 4# Pomocí metody page.evaluate () můžete zachytit text libovolného konkrétního prvku (v tomto příkladu zachytíme text záhlaví). 

const data = await pageWeb.evaluate(() => {   
const header = document.querySelector(".uabb-heading-text").innerText;
return { header };

V příštím výukovém programu probereme, jak identifikovat jakýkoli objekt z webové obrazovky.

Výukový program pro loutkáře - škrábání webu pro loutkáře
Výukový program pro loutkáře - škrábání webu pro loutkáře

Krok 5# V tomto posledním kroku musíme zpracovat data a poté zavřít webovou stránku. Kompletní kód pro škrábání na webu Puppeteer bude vypadat níže -

const puppeteer = require("puppeteer");

async function scrap() {
  // Launch the browser
  const browserApp = await puppeteer.launch();
  // Create a page instance
  const pageApp = await browserApp.newPage();
  // invoke the web page for scraping
  await pageApp.goto("https://lambdageeks.com/");

  // Select any web element
const data = await pageApp.evaluate(() => {   
const header = document.querySelector(".uabb-heading-text").innerText;
return { header };

// Here we can do anything with this data. Here displaying the data
console.log(header);

 //We close the browser
  await browserApp.close();
}

Scrap();

Krok 6# Nyní můžeme tento loutkářský web škrábací kód spustit pomocí příkazu:  uzel index.js

Poznámka: V dalším článku „Nainstalujte Puppeteer“ probereme instalační nastavení Puppeteeru a provedeme výše uvedený kód pro škrábání webu Puppeteer.

Přehled automatizace testu loutkářů

Kromě škrábání webu má Puppeteer také funkce pro provádění níže uvedených činností,

  • Pořizujte snímky webových stránek.
  • Můžeme uložit obrazovku webové stránky jako soubor PDF.
  • Automatizace ručních kroků lze dosáhnout k provedení testování uživatelského rozhraní.

Když tedy kombinujeme všechny výše uvedené funkce, můžeme použít Puppeteer pro automatizaci testů. Abychom porozuměli automatizaci Puppeteer Test Automation, musíme se nejprve seznámit s testováním softwaru.

Přehled testování:

Je vyžadováno testování, aby bylo zajištěno, že jsou splněny všechny softwarové požadavky bez jakýchkoli problémů. Od začátku procesu vývoje softwaru jsou k dispozici různé typy testovacích cyklů. Software lze testovat ručně nebo pomocí automatizovaného přístupu.

Účelem testování softwaru je -

  • Ověřte kvalitu produktů.
  • Najděte chyby produktu před nasazením do výroby.
  • Kontrola požadavků je splněna.
  • Testování výkonu produktu.

Zde jsou vysvětleny typy testování -

Testování jednotek - Vývojáři jsou odpovědní za provedení testování jednotky během fáze vývoje kódu.

Testování integrace - Toto testování je vyžadováno po integraci různých komponent softwarového produktu. Hlavním účelem je zajistit, aby všechna rozhraní fungovala bez problémů.

Testování systému - Jedná se o podrobné testování, které je třeba provést po integraci, aby bylo zajištěno splnění všech požadavků.

testování přijetí uživatele - Je to také podrobné testování, které musí provést koncový uživatel produktu, aby byla zajištěna kvalita.

Regresní testování - Je nutné zajistit, aby hlavní obchodní proces fungoval hladce během jakýchkoli softwarových vylepšení.

Výhody automatizace testů:

  • Snižte prováděcí cyklus.
  • Vyvarujte se šance na lidské chyby.
  • Minimalizujte úsilí o provedení testu.
  • Rychlé vydání softwaru.
  • Zvyšte pokrytí testování, abyste snížili riziko.
  • Schopnost provádět paralelní provádění.

Proč Puppeteer?

Většinu manuálních operací prováděných v prohlížeči Chrome lze automatizovat pomocí nástroje Puppeteer. Puppeteer je tedy dobrou volbou pro rychlé a snadnější testování jednotek ve webových aplikacích. 

Omezení Puppeteer jako nástroj pro testování automatizace jsou –

  • Podporuje pouze prohlížeč Chrome a Chromium.
  • Testování pomocí prohlížeče Coss není možné.
  • Mobilní testování nelze provést.

Bezhlavé testování Chrome:

Bezhlavý prohlížeč znamená, že Puppeteer komunikuje s prohlížečem Chrome jako aplikací na pozadí, což znamená, že chromované uživatelské rozhraní není na obrazovce viditelné. Testování bezhlavého chromu znamená, že testování automatizace se má provádět ve skrytém prohlížeči. Po testování bezhlavého chromu je Puppeteer také schopen správně zachytit webovou obrazovku.

Loutkář vs selen

Níže je vysvětleno srovnání mezi Puppeteerem a Selenem jako nástrojem pro testování automatizace -

  • Podpora programovacího jazyka - Puppeteer podporuje pouze JavaScript, kde selen podporuje jazyky Java, Python, Node.js a C #.
  • Podpora prohlížeče - Puppeteer je použitelný pouze pro prohlížeč Chrome nebo Chromium, ale Selenium podporuje také prohlížeče Chrome, Mozilla, Safari, IE, Opera.
  • Podpora komunity - Podpora komunity omezená na Skupiny Google, GitHub a Přetečení zásobníku pro Puppeteera. Ale pro selen je k dispozici široká podpora komunity na více fórech.
  • Rychlost provedení - Provedení skriptu Puppeteer je rychlejší než Selenium.
  • Instalace a nastavení - Instalace a nastavení loutkáře je snadnější a jednodušší proces.
  • Podpora mezi platformami - Loutkář to nepodporuje, ale Selenium ano.
  • Nahrávání - Funkce nahrávání nejsou v Puppeteer k dispozici. Ale tato funkce je k dispozici pro Selenium IDE.
  • Screenshoty - Puppeteer má schopnost pořídit snímek obrazovky jako obrázek nebo formát PDF, kde selen může podporovat pouze formát obrázku.
  • Podpora testovací platformy – Puppeteer podporuje pouze webové prohlížeče, ale Selenium dokáže automatizovat web a mobilní s Appium.
  • Kódovací dovednosti - Je vyžadován pro webový ovladač Puppeteer Selenium, ale ne pro Selenium IDE.

Na základě výše uvedeného srovnání můžeme dojít k závěru, že Puppeteer udělá nejlepší volbu, když musíme provést testování na úrovni jednotek pro jakoukoli webovou aplikaci, kde je vyžadováno rychlé a flexibilní řešení. Druhý nástroj, Selenium, bude lepší volbou, když je potřeba mobilní aplikace a multiplatformní testování aplikací, klikněte zde naučit se selen od LambdaGeeks.

Závěr:

V tomto úvodním článku o Výukový program pro loutkáře, dozvěděli jsme se o přehledu Puppeteer Web Scraping a Puppeteer Test Automation. O podrobném návodu k instalaci Puppeteer a spuštění malého skriptu se seznámíme v dalším článku Puppeteer. prosím klikněte zde navštívit referenční portál pro tento tutoriál Puppeteer.

Zanechat komentář