Die Version der JavaScript-Bibliothek Puppeteer 23 wurde vorgestellt, die für die Automatisierung der Steuerung von Webbrowsern gedacht ist. Die Bibliothek eignet sich sowohl für die automatische Ausführung typischer Browseroperationen als auch für das Testen von Browsern und die Simulation der Benutzerinteraktion. Der Projektcode ist in TypeScript unter Verwendung von Node.js geschrieben und wird unter der Lizenz Apache 2.0 vertrieben.
Zum Beispiel ermöglicht Puppeteer das Erstellen eines Skripts, das den Browser startet, die gewünschte Fenstergröße einstellt, eine bestimmte Seite öffnet, den Fokus auf ein festgelegtes Suchfeld legt, Daten in das Feld eingibt und eine Anfrage sendet, gefolgt von einem Wechsel zu dem ersten Ergebnis in der Liste und dem Speichern der erhaltenen Seite. Die Bibliothek bietet auch Funktionen zum Herunterladen der neuesten Version des ausgewählten Browsers, zur Simulation der Nutzung auf einem bestimmten Gerät (zum Beispiel auf einem Smartphone Pixel 5) und zur Bearbeitung von Authentifizierungsformularen. Während der Arbeit können Netzwerkanfragen und -antworten überwacht, abgefangen, modifiziert oder blockiert sowie HTTP-Header manipuliert und eigene Skripte im Kontext der geöffneten Seiten ausgeführt werden.
Die Version Puppeteer 23 ist bemerkenswert, da sie Unterstützung für den Browser Firefox bietet, neben den ursprünglich unterstützten Chromium-basierten Browsern (das Puppeteer-Projekt wird vom Chrome Browser Automation-Team entwickelt). Für die Interaktion mit den Browsern werden die Protokolle CDP (Chrome DevTools Protocol) und WebDriver BiDi unterstützt. Standardmäßig werden die Browser im headless Modus gestartet. Es wird beobachtet, dass die Ergänzung der neuen Version mit Unterstützung für Firefox und WebDriver BiDi es ermöglicht, Puppeteer als universelles Mittel zur Automatisierung der Tests von Webanwendungen in verschiedenen Browsern zu verwenden.
Quelle: opennet.ru
