Erste Schritte mit Playwright

Grundlegende Notizen

Hauptsächlich nach https://blog.logrocket.com/playwright-vs-puppeteer/ recherchiert; das Folgende sind Notizen.

Seit Chrome headless Browser unterstützt , werden Web-Automatisierungsframeworks, die zuvor von Einzelentwicklern mit komplexen und kleinteiligen Technologien wie PhantomJS oder Selenium betrieben wurden, rasant weiterentwickelt.

Puppeteer wird offiziell von Chrome unterstützt und basiert auf dem DevTools Protocol. Im Vergleich zu PhantomJS (basierend auf dem WebDriver-Protokoll) ist es stabiler.

Playwright wurde von einem Team entwickelt, das zuvor an Puppeteer arbeitete. Im Vergleich zu Puppeteer:

  1. Ähnliche APIs, daher geringe Umstiegskosten.
  2. Einige APIs sind ergonomischer und semantisch klarer; verschiedene Geräte lassen sich einfach simulieren.
  3. Firefox und WebKit werden unterstützt, allerdings noch mit geringerer Kompatibilität.

Bei der Wahl zwischen Playwright, Puppeteer, Cypress, PhantomJS oder Selenium (mit vielen Workarounds, aber auch viel Flakiness) sollte man Folgendes beachten:

  1. Browserübergreifende Unterstützung. Nach diesem Artikel ist Playwright derzeit am stärksten, aber niemand weiß, ob Puppeteer und Cypress dauerhaft zurückbleiben.
  2. Langfristige Unterstützung.
  3. Jede konkrete Anwendung muss einzeln bewertet werden.

Wahl für Projekte

Für ein neues Projekt empfehle ich Playwright. Einen detaillierten Vergleich findest du im zweiten Artikel unter Weitere Quellen.

Weitere Quellen

  1. The reckless, infinite scope of web browsers – Gedanken zur modernen Browserlandschaft.
  2. Playwright VS Selenium VS Puppeteer VS Cypress – Ein umfassender chinesischer Vergleich populärer Web-Automatisierungsframeworks.
  3. Puppeteer, Selenium, Playwright, Cypress – how to choose? – Der Artikel, der am Anfang des obigen chinesischen Beitrags zitiert wird.