È stata rilasciata la versione 23 della libreria JavaScript Puppeteer, progettata per l'automazione della gestione dei browser web. La libreria è adatta sia per l'esecuzione automatica di operazioni standard nel browser, sia per il test dei browser e la simulazione dell'utilizzo degli utenti. Il codice del progetto è scritto in TypeScript utilizzando Node.js e viene distribuito con licenza Apache 2.0.
Ad esempio, Puppeteer consente di creare uno script che avvia un browser, imposta la dimensione della finestra desiderata, apre una pagina specifica, posiziona il cursore su un campo di ricerca, inserisce i dati e invia la richiesta, per poi seguire il link al primo risultato della lista e salvare la pagina ottenuta. La libreria offre anche la possibilità di scaricare l'ultima versione del browser scelto, simulare l'operatività su un dispositivo hardware specifico (ad esempio, su uno smartphone Pixel 5), e gestire i moduli di autenticazione. Durante l'esecuzione, si possono monitorare, intercettare, modificare o bloccare richieste e risposte di rete, nonché manipolare le intestazioni HTTP ed eseguire propri script nel contesto delle pagine aperte.
Il rilascio di Puppeteer 23 è notevole per il supporto del browser Firefox, oltre ai browser inizialmente supportati basati sul motore Chromium (il progetto Puppeteer è sviluppato dal team di Chrome Browser Automation). Per interagire con i browser, sono supportati i protocolli CDP (Chrome DevTools Protocol) e WebDriver BiDi. I browser vengono avviati in modalità senza testa (headless) per impostazione predefinita. Si osserva che l'aggiunta del supporto per Firefox e WebDriver BiDi nella nuova versione consente di utilizzare Puppeteer come uno strumento universale per l'automazione dei test delle applicazioni web su diversi browser.
Fonte: opennet.ru
