Playwright (Software)
Playwright ist eine Open-Source-Automatisierungsbibliothek für Browser-Tests und Web-Scraping, die von Microsoft[2] entwickelt und am 31. Januar 2020 veröffentlicht wurde und seitdem bei Programmierern und Web-Entwicklern beliebt ist.
Playwright
| |
---|---|
Basisdaten
| |
Entwickler | Microsoft |
Erscheinungsjahr | 2020 |
Aktuelle Version | 1.49.0[1] (18. November 2024) |
Betriebssystem | Microsoft Windows, macOS, Linux |
Programmiersprache | TypeScript |
Kategorie | Testautomatisierung |
Lizenz | Apache-Lizenz |
deutschsprachig | nein |
playwright.dev |
Playwright bietet die Möglichkeit, Browseraufgaben in Chromium, Firefox und WebKit mit einer einzigen API zu automatisieren. Dies ermöglicht es Entwicklern, zuverlässige End-to-End-Tests zu erstellen, die sowohl im Nicht-Headless-Modus als auch im Headless-Modus zur Automatisierung ausgeführt werden können.
Playwright unterstützt Programmiersprachen wie TypeScript, JavaScript, Python, C# und Java, obwohl seine Haupt-API ursprünglich in Node.js geschrieben wurde. Playwright unterstützt alle modernen Webfunktionen, einschließlich Netzwerküberwachung und mehrere Browserkontexte, und bietet eine automatische Wartefunktion, die die Unbeständigkeit von Tests reduziert.
@playwright/test
Bearbeiten@playwright/test ist ein Test-Runner mit Jest-ähnlichen Assertions[3], der vom Playwright-Team entwickelt und gepflegt wird und auf der Playwright-API aufsetzt. Dieser Test-Runner ist eng mit Playwright integriert und wurde speziell für End-to-End-Tests entwickelt und verfügt über Funktionen wie browserspezifische Tests, parallele Testausführung, umfangreiche Browser-Kontextoptionen, Snapshot-Tests, automatische Wiederholungen und vieles mehr.
Geschichte
BearbeitenPlaywright wurde von Microsoft im Januar 2020 angekündigt und von einem Team von Ingenieuren entwickelt, die zuvor an ähnlichen Projekten wie Puppeteer bei Google gearbeitet hatten[4]. Seit seiner Einführung wird Playwright aktiv gepflegt und hat ein schnelles Wachstum und eine schnelle Akzeptanz in der Web-Testing-Community erfahren[5].
Der @playwright/test runner wurde später als Teil der Bemühungen veröffentlicht, eine umfassendere Lösung für browserbasierte Tests bereitzustellen. Seine Entwicklung basierte im Wesentlichen auf der Notwendigkeit, einen spezialisierten Runner zu haben, der das volle Potenzial der Playwright-API nutzen und End-to-End-Tests robuster und unkomplizierter machen kann.
Verwendung und Beispiele
BearbeitenPlaywright wird in erster Linie für die Automatisierung von Browseraufgaben verwendet, die von einfacher Seitennavigation und Content Scraping bis hin zu komplexeren Vorgängen wie automatisierten Formularübermittlungen, Benutzerinteraktionen und mehr reichen können. Ein einfacher JavaScript-Codeausschnitt, der Playwright verwendet, könnte beispielsweise so aussehen:
const { chromium } = require('playwright');
(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto('https://example.com');
await page.screenshot({ path: 'example.png' });
await browser.close();
})();
In diesem Beispiel wird Playwright verwendet, um einen Chromium-Browser zu öffnen, zu „https://example.com“ zu navigieren, einen Screenshot zu machen und ihn als „example.png“ zu speichern.
@playwright/test erweitert diese Fähigkeiten, indem es einen Test-Runner bereitstellt, der es Entwicklern ermöglicht, ihre Tests in einer strukturierten und skalierbaren Weise zu schreiben und zu organisieren. Ein Beispieltest mit @playwright/test könnte wie folgt aussehen:
const { test } = require('@playwright/test');
test('basic test', async ({ page }) => {
await page.goto('https://example.com');
await expect(page).toHaveTitle('Example Domain');
});
In diesem Beispiel wird ein Test geschrieben, um zu „https://example.com“ zu navigieren und zu prüfen, ob der Titel der Seite 'Example Domain' lautet.
Weblinks
BearbeitenEinzelnachweise
Bearbeiten- ↑ Release 1.49.0. 18. November 2024 (abgerufen am 25. November 2024).
- ↑ E2E-Testing mit Playwright: Der Weg der Mitte. Abgerufen am 17. November 2024.
- ↑ Assertions. Abgerufen am 17. November 2024.
- ↑ Microsoft Announces Playwright Alternative to Puppeteer. Abgerufen am 17. November 2024.
- ↑ A Comparative Analysis of Playwright Adoption vs Cypress and Selenium. Abgerufen am 17. November 2024.