Ir para o conteúdo

Playwright:Framework de Testes Web Multi-navegador

Playwright é um framework de código aberto desenvolvido pela Microsoft para automação e teste de aplicações web. Ele permite controlar Chromium, Firefox e WebKit usando uma única API, facilitando a criação de testes end-to-end e scripts de automação que funcionam de forma consistente em diferentes navegadores.

Instalação e Opções de Uso

Existem diferentes maneiras de integrar o Playwright ao seu fluxo de trabalho, cada uma atendendo a um caso de uso específico:

Melhor para Comando de instalação
Playwright Test (teste end-to-end) npm init playwright@latest
Playwright CLI (agentes de código) npm i -g @playwright/cli@latest
Playwright MCP (agentes de IA e automação LLM) npx @playwright/mcp@latest
Playwright Library (scripts de automação de navegador) npm i playwright
Extensão VS Code (autor e depuração de testes) Instalar via Marketplace (ms-playwright.playwright)

Dica

Ao usar npm init playwright@latest, o instalador já baixa os binários dos navegadores necessários (Chromium, Firefox, WebKit) e configura o projeto de testes.

Escrevendo e Executando Testes

Com Playwright Test você pode criar testes usando a sintaxe familiar de test e expect do JavaScript/TypeScript:

import { test, expect } from '@playwright/test';

test('tem título correto', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await expect(page).toHaveTitle(/P l a y w r i g h t/);
});

test('clica no link Get started', async ({ page }) => {
  await page.goto('https://playwright.dev/');
  await page.getByRole('link', { name: 'Get started' }).click();
  await expect(page.getByRole('heading', { name: 'Installation' })).toBeVisible();
});

Para executar os testes, basta rodar:

npx playwright test

Atenção

Cada teste roda em um contexto de navegador isolado, garantindo que não haja interferência de estado entre testes.

Recursos Adicionais

  • Auto-waiting: o Playwright aguarda automaticamente que elementos estejam prontos antes de realizar ações, reduzindo a necessidade de sleep ou esperas manuais.
  • Asserções web-first: integração com expectações que funcionam diretamente com propriedades do DOM.
  • Suporte a múltiplos idiomas: além de JavaScript/TypeScript, háBindings para Python, Java e .NET.
  • Integração com CI/CD: fácil de incorporar em pipelines de GitHub Actions, GitLab CI, Azure Pipelines, etc.

Pontos-chave

  • Playwright oferece uma API unificada para Chromium, Firefox e WebKit.
  • Diversos modos de instalação atendem a testes, CLI, agentes de IA e extensões de IDE.
  • Recursos como auto-waiting e isolamento de navegador aumentam a confiabilidade dos testes.

Ferramentas e Tecnologias

  • [[Playwright]]
  • [[Chromium]]
  • [[Firefox]]
  • [[WebKit]]
  • [[npm]]
  • [[Visual Studio Code]]

Nota pessoal

https://github.com/microsoft/playwright

Tags

teste-automatizado #automação-navegador #multi-navegador #extensão-vscode