A extensão oficial do Playwright para VS Code tem um botão "Pick locator" que resolve o locator certo clicando em um elemento num browser em execução. Elimina a maior parte do tempo gasto escrevendo seletores manualmente. Ela também conecta o debugger para você pausar num breakpoint e digitar await page.title() ou await page.locator('...').isVisible() diretamente no Debug Console sem reexecutar o teste.
Extensões essenciais
1. Playwright Test for VS Code (Oficial)
Publisher: Microsoft
Extension ID: ms-playwright.playwright
Essa é a extensão inegociável. Ela adiciona:
- Painel Test Explorer: visualize todos os seus testes organizados por arquivo, execute com um clique
- Executar testes individuais: clique no botão play ao lado de qualquer bloco
test(...) - Depurar testes: defina breakpoints, avance pelo código, inspecione o estado da
page - Gravar novos testes: inicie o Playwright Codegen de dentro do VS Code
- Mostrar browser: execute testes com o browser visível
- Pick locator: clique em um elemento no browser, receba o locator Playwright correto
Após instalar, procure o ícone do Playwright na barra lateral esquerda (parece uma máscara de teatro). Seus testes devem aparecer automaticamente se você tiver um playwright.config.ts na raiz do projeto.
Como usar:
- Abra o painel Testing (Ctrl+Shift+P → "Show Testing")
- Expanda seus arquivos de teste
- Clique em ▶ para executar, ou no ícone de bug para depurar
2. ESLint
Extension ID: dbaeumer.vscode-eslint
Destaca problemas de código enquanto você digita. Para projetos TypeScript/Playwright, configure com:
npm install -D eslint @typescript-eslint/parser @typescript-eslint/eslint-pluginCrie .eslintrc.json:
{
"parser": "@typescript-eslint/parser",
"plugins": ["@typescript-eslint"],
"extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
"rules": {
"no-unused-vars": "warn",
"@typescript-eslint/no-explicit-any": "warn"
}
}3. Prettier
Extension ID: esbenp.prettier-vscode
Formata o código automaticamente ao salvar. Essencial para estilo de código consistente. Instale:
npm install -D prettierCrie .prettierrc:
{
"semi": true,
"singleQuote": true,
"tabWidth": 2,
"trailingComma": "es5",
"printWidth": 100
}Nas configurações do VS Code, habilite format on save:
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode"
}4. GitLens
Extension ID: eamodio.gitlens
Mostra quem alterou cada linha por último, histórico completo do git, comparação de branches. Não é específico do Playwright, mas é indispensável em qualquer projeto de time. Especialmente útil ao depurar: "quem mudou esse teste e por quê?"
5. Error Lens
Extension ID: usernamehw.errorlens
Exibe erros de TypeScript/ESLint inline na linha onde ocorrem, em vez de apenas no painel Problems. Detecta erros mais rápido.
Configurações do VS Code para projetos Playwright
Abra o JSON de configurações (Ctrl+Shift+P → "Open User Settings JSON") e adicione:
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.enablePromptUseWorkspaceTsdk": true,
"typescript.suggest.autoImports": true,
"editor.minimap.enabled": false,
"editor.wordWrap": "on",
"editor.rulers": [100],
"files.associations": {
"*.spec.ts": "typescript"
},
"terminal.integrated.defaultProfile.windows": "Git Bash",
"explorer.confirmDelete": false
}Fluxos de trabalho Playwright no VS Code
Executando testes pelo editor
Você tem três formas de executar um teste:
- Painel Test Explorer: lista completa de testes, execute todos, por arquivo ou por tag
- Botão play verde: passe o mouse sobre uma linha
test(, clique em ▶ - Terminal:
npx playwright test(use flags como--headed,--debug)
O Test Explorer é ideal para rodar a suite completa. O botão inline é ideal para executar um único teste rapidamente.
Depurando um teste com falha
- Defina um breakpoint na linha que está falhando (clique na margem esquerda)
- No Test Explorer, clique com o botão direito no teste → "Debug Test"
- O VS Code pausa no breakpoint
- No Debug Console, você pode digitar comandos Playwright:
await page.title()— veja o título da página atualawait page.locator('[data-testid="btn"]').isVisible()— verifique o estado do elementopage.url()— veja onde o Playwright está
Isso é muito mais eficiente do que adicionar console.log e reexecutar.
Usando o Playwright Inspector pelo VS Code
- Clique com o botão direito em um teste → "Debug Test"
- Ou execute
PWDEBUG=1 npx playwright testno terminal
O Playwright Inspector abre ao lado do browser. Você pode:
- Avançar pelas ações uma a uma
- Ver em tempo real para o que o locator resolve
- Selecionar novos locators clicando nos elementos
Gravando um novo teste
- Na barra lateral da extensão Playwright, clique em "Record new"
- Um browser abre
- Faça as ações que quer automatizar
- Clique em "Copy" para obter o código gerado
- Cole no arquivo de teste e refine os seletores
Bom para conseguir um ponto de partida, mas sempre refine os seletores gerados para usar atributos data-testid.
Estrutura de projeto no VS Code
Um layout limpo de projeto Playwright que o VS Code gerencia bem:
my-playwright-project/
├── tests/
│ ├── e2e/
│ │ ├── login.spec.ts
│ │ ├── checkout.spec.ts
│ ├── api/
│ │ ├── users-api.spec.ts
│ ├── fixtures/
│ │ ├── auth.fixture.ts
│ │ └── index.ts
├── pages/
│ ├── LoginPage.ts
│ ├── DashboardPage.ts
├── playwright.config.ts
├── tsconfig.json
├── package.json
└── .envO explorer do VS Code recolhe pastas bem, então essa estrutura é fácil de navegar.
Atalhos de teclado que valem conhecer
| Atalho | O que faz |
|---|---|
Ctrl+Shift+P | Paleta de comandos (busque qualquer comando) |
Ctrl+P | Abrir arquivo rapidamente |
Ctrl+Shift+F | Buscar em todos os arquivos |
Ctrl+` | Alternar terminal |
F2 | Renomear símbolo (renomeia uma variável em todo o projeto) |
F12 | Ir para definição |
Alt+F12 | Visualizar definição (inline, sem navegar para outro lugar) |
Ctrl+D | Selecionar próxima ocorrência da seleção |
Alt+Shift+F | Formatar documento |
Ctrl+/ | Alternar comentário de linha |
Os mais importantes para depuração no Playwright: F5 inicia a depuração, F10 avança, F11 entra na função, F5 novamente continua até o próximo breakpoint.
Gerenciamento do arquivo .env
Nunca faça commit de segredos. Crie .env para variáveis de ambiente locais:
BASE_URL=https://staging.yourapp.com
ADMIN_EMAIL=admin@test.com
ADMIN_PASSWORD=TestAdmin1
API_KEY=your-test-api-keyAdicione ao .gitignore:
.env
.env.local
.env.*.localNo config do Playwright:
import { defineConfig } from '@playwright/test';
import dotenv from 'dotenv';
dotenv.config();
export default defineConfig({
use: {
baseURL: process.env.BASE_URL || 'http://localhost:3000',
},
});Instale dotenv: npm install -D dotenv
Dicas para manter a produtividade
Use o terminal dentro do VS Code. Alternar para um terminal externo quebra o fluxo. O terminal integrado (Ctrl+`) fica no mesmo diretório.
Divida os painéis. Coloque o arquivo de teste à esquerda e o page object à direita. View → Editor Layout → Two Columns.
Use tasks para comandos frequentes. Crie .vscode/tasks.json para executar npx playwright test com um atalho.
Zen mode para focar. View → Appearance → Zen Mode oculta tudo exceto o editor. Bom para escrever casos de teste sem distrações.
A configuração certa do VS Code remove atrito do trabalho diário de automação de testes. Instale a extensão do Playwright primeiro, o resto pode vir incrementalmente conforme você descobre o que precisa.
→ Veja também: Instalando Playwright: Guia de Configuração Passo a Passo (2026) | Arquivo de Configuração do Playwright Explicado: Todas as Opções | Executar Testes Playwright pelo CLI: Flags, Filtros e Depuração | Playwright Codegen: Grave Testes Sem Escrever Código