De nieuwe release van de JavaScript-bibliotheek Puppeteer 23 is gepresenteerd, die is bedoeld voor de automatisering van webbrowserbeheer. De bibliotheek is geschikt voor zowel het automatisch uitvoeren van standaard browsertaken als voor het testen van browsers en het simuleren van gebruikersgedrag. De projectcode is geschreven in TypeScript met behulp van Node.js en wordt verspreid onder de Apache 2.0-licentie.
Met Puppeteer kunt u bijvoorbeeld een script maken dat de browser opstart, een gewenst venstergrootte instelt, een specifieke pagina opent, de focus op een bepaald zoekveld plaatst, gegevens invoert in dat veld en een verzoek indient, waarna het naar de link van het eerste resultaat in de lijst gaat en de verkregen pagina opslaat. De bibliotheek biedt ook mogelijkheden voor het downloaden van de nieuwste versie van de gekozen browser, het simuleren van werk op een geselecteerd hardwareapparaat (zoals de Pixel 5 smartphone), en het verwerken van authenticatieformulieren. Tijdens het gebruik kunnen netwerkverzoeken en antwoorden worden gevolgd, onderschept, gewijzigd of geblokkeerd, en kunnen HTTP-headers worden gemanipuleerd en eigen scripts worden uitgevoerd in de context van de geopende pagina's.
De release van Puppeteer 23 is opmerkelijk omdat deze ondersteuning biedt voor de browser Firefox, naast de oorspronkelijk ondersteunde op Chromium gebaseerde browsers (het Puppeteer-project wordt ontwikkeld door het Chrome Browser Automation-team). Voor de interactie met browsers worden de protocollen CDP (Chrome DevTools Protocol) en WebDriver BiDi ondersteund. Standaard worden browsers in headless modus uitgevoerd. Het is vermeldenswaardig dat de toevoeging van ondersteuning voor Firefox en WebDriver BiDi in deze nieuwe versie het mogelijk maakt om Puppeteer te gebruiken als een universele tool voor de automatisering van webapplicatietests in verschillende browsers.
Bron: opennet.ru
