Tutoriel Playwright
Playwright est un projet open source lancé par Microsoft en 2020, un framework open source pour l'automatisation web et les tests de bout en bout.
Playwright prend en charge plusieurs navigateurs (Chromium, Firefox et WebKit) et plusieurs langages de programmation (JavaScript/TypeScript, Python, Java et .NET), visant à fournir une solution de tests automatisés fiable, rapide et riche en fonctionnalités.
Quelles bases faut-il connaître pour apprendre Playwright ?
Avant d'apprendre Playwright, maîtriser ces quelques éléments suffit :
- Connaître un peuJavaScript, en particulier
async/await; - être capable d'utiliserNode.jsetnpmpour exécuter des scripts;
- connaître un peuHTMLet les sélecteurs(e.g.,
#id、.class); - savoir utiliser le terminalpour exécuter des commandes.
Que peut faire Playwright ?
En une phrase : tout ce qu'une personne peut cliquer dans le navigateur, Playwright peut presque l'automatiser.
Par exemple :
- Cliquer sur des boutons
- Remplir des formulaires
- Naviguer vers différentes pages
- Prendre des captures d'écran et enregistrer le contenu web
Exemple simple avec Playwright
Voici un exemple simple avec Playwright qui peut prendre une capture d'écran de la page d'accueil de Baidu :
Exemple
const { chromium } = require('playwright');
(async () => {
// 1. Lancer le navigateur
const browser = await chromium.launch({ headless: false }); // Définir sur false pour voir le navigateur
const page = await browser.newPage();
// 2. Ouvrir la page web
await page.goto('https://www.baidu.com');
// 3. Prendre une capture d'écran et l'enregistrer
await page.screenshot({ path: 'baidu.png' });
// 4. Fermer le navigateur
await browser.close();
console.log("Capture d'écran enregistrée dans example.png");
})();
Exécutez :
node hello.js
Le navigateur saisira automatiquement deux tâches et enregistrera une capture d'écran.
Liens connexes
- Site officiel de Playwright :https://playwright.dev/
- Dépôt open source de Playwright :https://github.com/microsoft/playwright
- Documentation de l'API Playwright :https://playwright.dev/docs/api/class-playwright/