Pular para o conteúdo

Playwright

O que é o Playwright, como ele captura telas em vários navegadores e como se compara ao Puppeteer para automação.

O Playwright é uma biblioteca de automação de navegadores de código aberto, mantida pela Microsoft. Ela controla Chromium, Firefox e WebKit por meio de uma única API e tem bindings oficiais para JavaScript e TypeScript, Python, Java e .NET. Um script abre páginas, clica, digita, espera a atividade de rede e lê o DOM, normalmente em um navegador headless, sem janela visível.

O Playwright vem com o próprio executor de testes, o Playwright Test, que adiciona execução paralela de testes, novas tentativas, rastreamento e asserções de captura de tela. Muitas equipes o usam para testes de ponta a ponta e para gerar capturas de tela como parte de um build ou de um pipeline de deploy.

O que o Playwright faz

  • Abre uma página no Chromium, no Firefox ou no WebKit com o mesmo script.
  • Emula um dispositivo: tamanho da viewport, fator de escala do dispositivo, toque, idioma, fuso horário e esquema de cores.
  • Preenche formulários, clica em elementos e espera por seletores, requisições de rede ou estados de carregamento da página.
  • Intercepta ou simula requisições de rede.
  • Grava rastreamentos, vídeos e capturas de tela de cada execução de teste.

Playwright para capturas de tela

page.screenshot() salva a viewport atual como PNG ou JPEG. A opção fullPage captura a página rolável inteira, clip captura um retângulo e locator.screenshot() captura um único elemento. O deviceScaleFactor do contexto do navegador define se a saída tem resolução 1x ou 2x.

No Playwright Test, toHaveScreenshot() compara uma nova imagem com uma linha de base armazenada e falha o teste quando a diferença de pixels excede um limite. Essa é uma base comum para testes de regressão visual.

Playwright ou Puppeteer

As duas bibliotecas automatizam navegadores por código e capturam telas e PDFs. O Playwright suporta Chromium, Firefox e WebKit e tem bindings para quatro ecossistemas de linguagem. O Puppeteer é uma biblioteca Node.js focada no Chrome, com suporte ao Firefox adicionado depois. O Playwright inclui um executor de testes completo; o Puppeteer costuma ser combinado com um executor separado, como o Jest. A escolha geralmente depende da linguagem, da cobertura de navegadores e do que a equipe já usa.

Erros comuns

  • Capturar antes de fontes da web, imagens ou conteúdo com lazy loading terminarem de carregar.
  • Deixar banners de cookies ou widgets de chat no quadro.
  • Comparar linhas de base geradas em sistemas operacionais diferentes, onde a renderização de fontes muda.
  • Esquecer que a viewport padrão é pequena, não uma largura típica de desktop.

Repetindo as mesmas capturas o tempo todo?

O Website Capture do Temposhot captura uma lista de URLs em Desktop 1920×1080, Tablet 768×1024 ou Mobile 390×844 sem escrever um script. Veja automação de capturas de tela de sites.

Perguntas frequentes

O Playwright é gratuito?

Sim. O Playwright é de código aberto, sob a licença Apache 2.0.

O Playwright consegue capturar uma página web inteira?

Sim. Passe fullPage: true para page.screenshot(). Páginas com lazy loading podem precisar ser roladas antes para que todas as imagens carreguem.

O Playwright precisa de um navegador visível?

Não. Ele roda em modo headless por padrão e também pode rodar com janela visível para depuração.

Fontes

Recursos relacionados

Você tira as mesmas capturas de tela várias vezes?

O Temposhot captura uma tela, janela ou área em intervalos programados e exporta o conjunto como PDF, imagens, ZIP ou MP4. As ferramentas gratuitas do navegador capturam apenas uma imagem por vez.

Recursos relacionados

Termos relacionados

Todos os termos do glossário