Playwright-Tutorial
Playwright ist ein Open-Source-Projekt, das 2020 von Microsoft gestartet wurde, ein Open-Source-Framework für Web-Automatisierung und End-to-End-Tests.
Playwright unterstützt mehrere Browser (Chromium, Firefox und WebKit) und mehrere Programmiersprachen (JavaScript/TypeScript, Python, Java und .NET), mit dem Ziel, eine zuverlässige, schnelle und funktionsreiche automatisierte Testlösung bereitzustellen.
Welche Grundlagen benötigen Sie, um Playwright zu lernen?
Bevor Sie Playwright lernen, reicht es aus, diese wenigen Dinge zu beherrschen:
- Ein wenigJavaScriptkennen, insbesondere
async/await; - in der Lage sein,Node.jsundnpm zu verwenden,um Skripte auszuführen;
- sich ein wenig mitHTMLund Selektoren auskennen(e.g.,
#id、.class); - kann das Terminalverwenden, um Befehle auszuführen.
Was kann Playwright tun?
In einem Satz: Alles, was eine Person im Browser anklicken kann, kann Playwright nahezu automatisieren.
Zum Beispiel:
- Schaltflächen klicken
- Formulare ausfüllen
- Zu verschiedenen Seiten navigieren
- Screenshots aufnehmen und Webinhalte speichern
Einfaches Playwright-Beispiel
Das folgende ist ein einfaches Playwright-Beispiel, das einen Screenshot von Baidus Startseite aufnehmen kann:
Beispiel
const { chromium } = require('playwright');
(async () => {
// 1. Browser starten
const browser = await chromium.launch({ headless: false }); // Auf false setzen, um den Browser zu sehen
const page = await browser.newPage();
// 2. Webseite öffnen
await page.goto('https://www.baidu.com');
// 3. Screenshot aufnehmen und speichern
await page.screenshot({ path: 'baidu.png' });
// 4. Browser schließen
await browser.close();
console.log("Screenshot gespeichert in example.png");
})();
Ausführen:
node hello.js
Der Browser trägt automatisch zwei To-do-Einträge ein und speichert einen Screenshot.
Verwandte Links
- Offizielle Playwright-Website:https://playwright.dev/
- Playwright Open-Source-Repository:https://github.com/microsoft/playwright
- Playwright-API-Dokumentation:https://playwright.dev/docs/api/class-playwright/