August 6, 2026 · Test Automation

Como Instalar o Playwright e Escrever seu Primeiro Teste em TypeScript

Aprenda a instalar o Playwright do zero, entender a estrutura do projeto e criar seu primeiro teste automatizado utilizando TypeScript.

Marcos Franco

QA Engineer & Mentor

No artigo anterior vimos por que o Playwright se tornou uma das ferramentas mais utilizadas para automação de testes. Agora chegou a hora de colocar a mão na massa.

Neste guia você vai instalar o Playwright, entender a estrutura básica de um projeto e criar seu primeiro teste utilizando TypeScript.

Ao final do artigo você terá um projeto funcionando e estará pronto para explorar funcionalidades mais avançadas.


Pré-requisitos

Antes de começar, você precisará ter instalado em sua máquina:

  • Node.js (versão LTS recomendada)
  • Um editor de código, como o Visual Studio Code
  • Conhecimentos básicos de JavaScript ou TypeScript (não são obrigatórios, mas ajudam)

Para verificar se o Node.js está instalado, execute:

node --version

Também confira o npm:

npm --version

Se ambos retornarem uma versão, você está pronto para continuar.


Criando um novo projeto

Crie uma pasta para seu projeto:

mkdir playwright-demo

Entre nela:

cd playwright-demo

Agora inicialize um projeto Node.js:

npm init -y

Esse comando criará um arquivo package.json, responsável por gerenciar as dependências e scripts do projeto.


Instalando o Playwright

A maneira mais simples de começar é utilizando o instalador oficial:

npm init playwright@latest

Durante a instalação, algumas perguntas serão exibidas.

Na maioria dos casos, basta aceitar as opções sugeridas.

Ao final do processo, o Playwright instalará:

  • O framework de testes
  • Os navegadores necessários
  • Um projeto inicial
  • Alguns exemplos de testes

Entendendo a estrutura do projeto

Depois da instalação, sua estrutura será semelhante a esta:

playwright-demo/

├── tests/
│   └── example.spec.ts

├── playwright.config.ts
├── package.json
└── node_modules/

Os arquivos mais importantes são:

tests/

É onde ficarão seus testes automatizados.

Cada arquivo normalmente termina com:

.spec.ts

ou

.test.ts

playwright.config.ts

Este arquivo centraliza as configurações do projeto.

É nele que você poderá definir:

  • URL base
  • Navegadores utilizados
  • Timeouts
  • Retries
  • Configurações de execução
  • Relatórios

Conforme seu projeto crescer, você passará bastante tempo configurando esse arquivo.


Criando seu primeiro teste

Dentro da pasta tests, crie um arquivo chamado:

home.spec.ts

Agora escreva o seguinte código:

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

test('A página inicial deve possuir o título correto', async ({ page }) => {
  await page.goto('https://playwright.dev');

  await expect(page).toHaveTitle(/Playwright/);
});

Embora seja um teste simples, ele já demonstra a estrutura básica utilizada em praticamente qualquer projeto de automação.


Entendendo o código

Vamos analisar cada parte.

Importando o Playwright

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

Aqui importamos duas funções principais:

  • test, responsável por criar um caso de teste.
  • expect, utilizada para realizar validações.

Criando um teste

test('A página inicial deve possuir o título correto', async ({ page }) => {

O primeiro parâmetro é apenas o nome do teste.

Já o objeto page representa uma aba do navegador, permitindo interagir com qualquer página web.


await page.goto('https://playwright.dev');

Esse comando abre a URL informada e aguarda automaticamente até que a navegação seja concluída.

Você não precisa adicionar esperas manuais.


Fazendo uma validação

await expect(page).toHaveTitle(/Playwright/);

Essa assertion verifica se o título da página contém a palavra Playwright.

Caso contrário, o teste falhará automaticamente.


Executando o teste

No terminal execute:

npx playwright test

Você verá uma saída semelhante a esta:

Running 1 test

✓ A página inicial deve possuir o título correto

1 passed

Parabéns!

Você acabou de executar seu primeiro teste automatizado.


Executando em modo visual

Caso queira acompanhar tudo acontecendo no navegador:

npx playwright test --headed

O navegador será aberto durante toda a execução do teste.

Essa opção é muito útil durante o aprendizado.


Conhecendo o UI Mode

Um dos recursos mais interessantes do Playwright é o UI Mode.

Execute:

npx playwright test --ui

A interface gráfica permite:

  • Executar apenas um teste específico
  • Filtrar testes
  • Reexecutar rapidamente
  • Visualizar falhas
  • Navegar pelos arquivos
  • Depurar testes de forma visual

É uma excelente ferramenta para desenvolvimento e aprendizado.


O que aprender depois?

Agora que você conseguiu criar seu primeiro teste, é hora de evoluir.

Os próximos assuntos que todo profissional de QA deveria estudar são:

  • Locators
  • Assertions avançadas
  • Fixtures
  • Hooks
  • Page Object Model (POM)
  • Mocking
  • API Testing
  • Network Interception
  • Execução paralela
  • GitHub Actions
  • Boas práticas de arquitetura

Dominar esses tópicos fará uma enorme diferença na qualidade e na escalabilidade das suas automações.


Quer aprender Playwright de forma prática?

Criar o primeiro teste é apenas o começo.

Em projetos reais, existem diversos desafios que não aparecem em exemplos simples: autenticação, organização da arquitetura, testes mais rápidos, manutenção da suíte e integração com pipelines de CI/CD.

Foi justamente pensando nisso que desenvolvi meu curso de Playwright com TypeScript.

Nele você aprenderá, passo a passo:

  • ✅ TypeScript para automação de testes
  • ✅ Arquitetura profissional de projetos
  • ✅ Locators e assertions avançadas
  • ✅ Fixtures e Page Object Model
  • ✅ Mocking e interceptação de requisições
  • ✅ Testes de API
  • ✅ GitHub Actions e integração contínua
  • ✅ Boas práticas utilizadas por equipes de Engenharia de Qualidade

Todo o conteúdo é baseado em situações reais enfrentadas por profissionais de QA, permitindo que você evolua muito mais rápido do que aprendendo apenas com exemplos isolados.

🎓 Conheça o curso completo:
👉 https://learnwithmarcos.com/api/udemy

No próximo artigo da série, veremos como localizar elementos corretamente utilizando Locators, uma das funcionalidades mais importantes para escrever testes robustos e fáceis de manter.

Playwright TypeScript E2E Testing