webapp-testing
Permite testar aplicações web locais, verificar funcionalidades e depurar o comportamento da interface. Captura screenshots e logs do navegador.
O que ela faz
Esta ferramenta ajuda a testar sites que você está desenvolvendo no seu computador. Ela permite verificar se tudo está funcionando corretamente, tirar 'fotos' da tela e ver mensagens de erro.
Quando usar
- ✓Quando você quer ver se um botão no seu site funciona.
- ✓Quando você quer tirar uma foto de como seu site está aparecendo.
- ✓Quando você quer ver se há erros acontecendo no site.
Exemplo do que pedir para a IA
“Verifique se o botão 'Salvar' funciona na minha página de perfil e tire uma captura de tela.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Você escreve um pequeno programa em Python que usa a ferramenta para abrir seu site, interagir com ele e verificar se tudo está como esperado. Ela pode até iniciar o servidor do seu site para você.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add anthropics/skills --skill webapp-testingOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/anthropics/skills/main/skills/webapp-testing/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Testes de Aplicações Web
Para testar aplicações web locais, escreva scripts nativos em Python com Playwright.
Scripts Auxiliares Disponíveis:
scripts/with_server.py- Gerencia o ciclo de vida do servidor (suporta múltiplos servidores)
Sempre execute os scripts com --help primeiro para ver o uso. NÃO leia o código fonte antes de tentar executar o script primeiro e descobrir que uma solução personalizada é absolutamente necessária. Esses scripts podem ser muito grandes e, portanto, poluir sua janela de contexto. Eles existem para serem chamados diretamente como caixas pretas, em vez de serem ingeridos em sua janela de contexto.
Árvore de Decisão: Escolhendo Sua Abordagem
User task → Is it static HTML?
├─ Yes → Read HTML file directly to identify selectors
│ ├─ Success → Write Playwright script using selectors
│ └─ Fails/Incomplete → Treat as dynamic (below)
│
└─ No (dynamic webapp) → Is the server already running?
├─ No → Run: python scripts/with_server.py --help
│ Then use the helper + write simplified Playwright script
│
└─ Yes → Reconnaissance-then-action:
1. Navigate and wait for networkidle
2. Take screenshot or inspect DOM
3. Identify selectors from rendered state
4. Execute actions with discovered selectors
Exemplo: Usando with_server.py
Para iniciar um servidor, execute --help primeiro e depois use o auxiliar:
Servidor único:
python scripts/with_server.py --server "npm run dev" --port 5173 -- python your_automation.py
Múltiplos servidores (ex: backend + frontend):
python scripts/with_server.py \
--server "cd backend && python server.py" --port 3000 \
--server "cd frontend && npm run dev" --port 5173 \
-- python your_automation.py
Para criar um script de automação, inclua apenas a lógica do Playwright (servidores são gerenciados automaticamente):
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.chromium.launch(headless=True) # Always launch chromium in headless mode
page = browser.new_page()
page.goto('http://localhost:5173') # Server already running and ready
page.wait_for_load_state('networkidle') # CRITICAL: Wait for JS to execute
# ... your automation logic
browser.close()
Padrão Reconhecimento-Então-Ação
Inspecione o DOM renderizado:
page.screenshot(path='/tmp/inspect.png', full_page=True) content = page.content() page.locator('button').all()Identifique seletores a partir dos resultados da inspeção
Execute ações usando os seletores descobertos
Armadilha Comum
❌ Não inspecione o DOM antes de esperar por networkidle em aplicações dinâmicas
✅ Faça esperar por page.wait_for_load_state('networkidle') antes da inspeção
Melhores Práticas
- Use scripts empacotados como caixas pretas - Para realizar uma tarefa, considere se um dos scripts disponíveis em
scripts/pode ajudar. Esses scripts lidam com fluxos de trabalho comuns e complexos de forma confiável, sem poluir a janela de contexto. Use--helppara ver o uso e, em seguida, invoque diretamente. - Use
sync_playwright()para scripts síncronos - Sempre feche o navegador quando terminar
- Use seletores descritivos:
text=,role=, seletores CSS ou IDs - Adicione esperas apropriadas:
page.wait_for_selector()oupage.wait_for_timeout()
Arquivos de Referência
- examples/ - Exemplos mostrando padrões comuns:
element_discovery.py- Descobrindo botões, links e campos de entrada em uma páginastatic_html_automation.py- Usando URLs file:// para HTML localconsole_logging.py- Capturando logs do console durante a automação
Perguntas frequentes
O que significa 'headless'?
Significa que o navegador abre sem mostrar a janela na tela, rodando em segundo plano para automatizar tarefas.
Por que devo esperar por 'networkidle'?
Isso garante que o site terminou de carregar todas as informações e animações antes de você tentar interagir ou verificar algo.
O que são 'selectors'?
São como endereços que a ferramenta usa para encontrar botões, textos ou campos específicos no seu site.
Detalhes
Descrição original do autor
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
repo: anthropics/skills
Popularidade
- Estrelas no GitHub
- 181 mil
- Posição no ranking
- #331
- Licença
- —
- Atualizada em
- 09/10/2026
Comentários
- …
Mais skills deste repositório
academy-guide
Faz seu agente recomendar cursos e tutoriais para aprender a usar o Claude. É útil quando você tem dúvidas sobre como usar o Claude ou seus produtos.
anthropics/skills
algorithmic-art
Ajuda seu agente a criar arte usando código, gerando imagens únicas. É útil quando você quer arte original feita por computador.
anthropics/skills
brand-guidelines
Faz seu agente aplicar as cores e o estilo visual da Anthropic em materiais. É útil para manter a identidade visual da empresa em diferentes projetos.
anthropics/skills
canvas-design
Ajuda seu agente a criar artes visuais bonitas em arquivos. É útil quando você pede um pôster, uma arte ou qualquer design estático.
anthropics/skills
Skills parecidas
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC