Vai al contenuto

Playwright

Cos'è Playwright, come cattura screenshot su più browser e come si confronta con Puppeteer per l'automazione.

Playwright è una libreria open source per l'automazione dei browser mantenuta da Microsoft. Controlla Chromium, Firefox e WebKit con un'unica API e ha binding ufficiali per JavaScript e TypeScript, Python, Java e .NET. Uno script apre pagine, fa clic, digita, attende l'attività di rete e legge il DOM, di solito in un browser headless senza finestra visibile.

Playwright include un proprio test runner, Playwright Test, che aggiunge esecuzione parallela dei test, nuovi tentativi, tracce e asserzioni sugli screenshot. Molti team lo usano per i test end-to-end e per generare screenshot come parte di una pipeline di build o di deploy.

Cosa può fare Playwright

  • Aprire una pagina in Chromium, Firefox o WebKit con lo stesso script.
  • Emulare un dispositivo: dimensione del viewport, fattore di scala del dispositivo, tocco, lingua, fuso orario e schema dei colori.
  • Compilare moduli, fare clic sugli elementi e attendere selettori, richieste di rete o stati di caricamento della pagina.
  • Intercettare o simulare richieste di rete.
  • Registrare tracce, video e screenshot di ogni esecuzione di test.

Playwright per gli screenshot

page.screenshot() salva il viewport corrente come PNG o JPEG. L'opzione fullPage cattura l'intera pagina scorrevole, clip cattura un rettangolo e locator.screenshot() cattura un singolo elemento. Il deviceScaleFactor del contesto del browser decide se l'output ha risoluzione 1x o 2x.

In Playwright Test, toHaveScreenshot() confronta una nuova immagine con una baseline salvata e fa fallire il test quando la differenza di pixel supera una soglia. È una base comune per il test di regressione visiva.

Playwright e Puppeteer a confronto

Entrambe le librerie automatizzano i browser tramite codice e catturano screenshot e PDF. Playwright supporta Chromium, Firefox e WebKit e ha binding per quattro ecosistemi linguistici. Puppeteer è una libreria Node.js focalizzata su Chrome, con supporto a Firefox aggiunto in seguito. Playwright include un test runner completo; Puppeteer viene di solito combinato con un runner separato come Jest. La scelta dipende spesso dal linguaggio, dalla copertura dei browser e da ciò che il team già usa.

Errori comuni

  • Catturare prima che finiscano di caricarsi i web font, le immagini o i contenuti lazy.
  • Lasciare nel frame banner dei cookie o widget della chat.
  • Confrontare baseline prese su un sistema operativo diverso, dove il rendering dei font cambia.
  • Dimenticare che il viewport predefinito è piccolo, non una larghezza desktop tipica.

Ripeti gli stessi screenshot più volte?

Temposhot Website Capture cattura un elenco di URL a Desktop 1920×1080, Tablet 768×1024 o Mobile 390×844 senza scrivere uno script. Vedi automazione degli screenshot di siti web.

Domande frequenti

Playwright è gratuito?

Sì. Playwright è open source con licenza Apache 2.0.

Playwright può catturare una pagina web intera?

Sì. Passa fullPage: true a page.screenshot(). Le pagine con lazy loading potrebbero dover essere scorse prima che tutte le immagini siano caricate.

Playwright richiede un browser visibile?

No. Per impostazione predefinita funziona in modalità headless, ma può anche funzionare con una finestra visibile per il debug.

Fonti

Risorse correlate

Ripeti sempre gli stessi screenshot?

Temposhot cattura a intervalli di tempo una schermata, una finestra o un'area e esporta il set come PDF, immagini, ZIP o MP4. Gli strumenti gratuiti online gestiscono le singole immagini.

Risorse correlate

Termini correlati

Tutti i termini del glossario