Skip to content

Latest commit

 

History

History
69 lines (50 loc) · 2.84 KB

File metadata and controls

69 lines (50 loc) · 2.84 KB

Bem-vindo ao Playwright4Noobs!

O que é o Playwright?

O Playwright é um framework de automação de testes web criado pela Microsoft em 2020. Ele permite escrever testes E2E (end-to-end) confiáveis para aplicações web, suportando nativamente Chromium, Firefox e WebKit (Safari) com uma única API.

O Playwright foi desenvolvido pela mesma equipe que criou o Puppeteer no Google, trazendo toda a experiência acumulada para uma nova ferramenta mais robusta e com suporte a múltiplos navegadores.

Por que usar o Playwright?

Comparativo: Playwright vs Cypress vs Selenium

Critério Playwright Cypress Selenium
Multi-browser real ✅ Chromium, Firefox, WebKit ⚠️ Chromium e Firefox ✅ Todos
Auto-wait ✅ Automático ✅ Automático ❌ Manual
Testes paralelos ✅ Nativo e gratuito ⚠️ Pago (Cloud) Manual
Testes de API ✅ Integrado ✅ Integrado
Emulação mobile ✅ iOS/Android ⚠️ Limitado
Multi-tab / Multi-janela
Testes visuais ✅ Nativo Via plugins Via plugins
Trace viewer
Linguagens suportadas TS, JS, Python, Java, C# JS/TS Muitas

Vantagens do Playwright

  • Auto-wait inteligente: espera automaticamente elementos ficarem prontos antes de interagir
  • Locators semânticos: getByRole(), getByLabel(), getByText() alinhados com acessibilidade
  • Isolamento de contextos: cada teste roda em contexto de browser isolado
  • Paralelismo gratuito: múltiplos workers sem custo adicional
  • Trace viewer: grave e visualize cada passo do teste como um filme
  • Codegen: grave testes navegando no browser com npx playwright codegen
  • API testing integrado: teste backend e frontend com a mesma ferramenta

O que você vai aprender neste curso?

Ao longo deste guia você vai aprender a:

  1. Instalar e configurar o Playwright no seu sistema operacional
  2. Escrever testes usando locators semânticos modernos
  3. Usar assertions automáticas com expect()
  4. Organizar testes com Page Object Model e Fixtures
  5. Interceptar e mockar requisições de rede
  6. Escrever testes de API com APIRequestContext
  7. Fazer testes visuais com screenshots
  8. Executar testes em paralelo e integrá-los ao CI/CD

Exemplo rápido

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

test('login com sucesso', async ({ page }) => {
  await page.goto('/login');

  await page.getByLabel('E-mail').fill('usuario@email.com');
  await page.getByLabel('Senha').fill('minha-senha');
  await page.getByRole('button', { name: 'Entrar' }).click();

  await expect(page).toHaveURL('/dashboard');
  await expect(page.getByText('Bem-vindo!')).toBeVisible();
});

Legível, confiável e sem waits manuais!


Ir para: Comunicação