Altes Headless Chrome als „chrome-headless-shell“ herunterladen

Anfang des Jahres haben wir die Verfügbarkeit des neuen Headless-Modus von Chrome (--headless=new) in Chrome 112 angekündigt. In diesem Modus können Entwickler Chrome in einer unbeaufsichtigten Umgebung ohne sichtbare Benutzeroberfläche ausführen. Dies ist zum Testen und zur Automatisierung nützlich.

Im Rahmen dieser Ankündigung haben wir angekündigt, dass wir den alten monitorlosen Modus aus dem Chrome-Binärprogramm entfernen möchten. Dies ist sinnvoll, da der alte Headless eigentlich ein separater Browser ist, d. h. wir bieten derzeit zwei Browser-Binärdateien in einem an. Gleichzeitig sind wir uns bewusst, dass es unterschiedliche Anwendungsfälle für den alten und den neuen monitorlosen Modus gibt:

  1. Der alte monitorlose Modus ist ein einfacher Wrapper um das //content-Modul von Chromium und weist daher wesentlich weniger Abhängigkeiten auf. X11/Wayland und D-Bus sind nicht erforderlich und sie ist in einigen Punkten leistungsfähiger als der vollwertige Chrome-Browser. Dadurch eignet sie sich für Anwendungsfälle wie automatische Screenshoterstellung oder Web Scraping.
  2. New Headless hingegen ist der echte Chrome-Browser und daher authentischer und zuverlässiger und bietet mehr Funktionen. Dadurch eignet sich diese Lösung besser für hochpräzise End-to-End-Tests von Web-Apps oder Browsererweiterungen.

Es gibt also einen Kompromiss zwischen Leistung und Authentizität. Welcher monitorlose Modus ist am besten für dich geeignet? Das hängt von Ihrem Anwendungsfall ab.

Ein Diagramm, das die in der obigen Liste angegebenen Informationen veranschaulicht.

Entwickler und Tester, die für ihre Automatisierungsanwendungsfälle keine volle Chrome-Funktionalität benötigen, können die alte Headless verwenden. Andernfalls ist das neue Headless-Modell wahrscheinlich die beste Wahl.

Damit Entwickler und Tester weiterhin zwischen diesen beiden Optionen wählen können, freuen wir uns, mitteilen zu können, dass die alte monitorlose Implementierung jetzt als eigenständiges chrome-headless-shell-Binärprogramm verfügbar ist. Diese neuen chrome-headless-shell-Binärdateien werden für jede an Nutzer gerichtete Chrome-Version erstellt und stehen ab Chrome 120 über die Infrastruktur von Chrome for Testing zum Download zur Verfügung.

Wie erhalte ich chrome-headless-shell-Binärdateien?

Wie bei anderen Binärprogrammen für Chrome for Testing lässt sich chrome-headless-shell am einfachsten über das @puppeteer/browsers-Befehlszeilendienstprogramm für Ihre Plattform herunterladen, das in npm verfügbar ist. Hier sind einige Beispiele:

# Download the latest available `chrome-headless-shell` binary corresponding to the Stable channel.
npx @puppeteer/browsers install chrome-headless-shell@stable

# Download a specific `chrome-headless-shell` version.
npx @puppeteer/browsers install chrome-headless-shell@120.0.6098.0

Wenn Sie lieber eigene automatisierte Skripts zum Herunterladen von chrome-headless-shell-Binärprogrammen erstellen möchten, haben wir die Lösung. Chrome for Testing bietet JSON API-Endpunkte mit den neuesten verfügbaren Versionen für die jeweilige Chrome-Release-Version (stabile, Beta, Entwickler und Canary). Einen kurzen Überblick über den aktuellen Status erhalten Sie im Chrome for Testing-Verfügbarkeits-Dashboard.

Feedback

Wir freuen uns auf Ihr Feedback zu chrome-headless-shell. Falls Probleme auftreten, melden Sie uns diese bitte.