skills/webapp-testing/SKILL.md
Princípios de teste de aplicações web. E2E, Playwright, estratégias de auditoria profunda.
npx skillsauth add lucasfdigital/orchard webapp-testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Descubra e teste tudo. Não deixe nenhuma rota sem teste.
Execute estes para testes de navegador automatizados:
| Script | Propósito | Uso |
| :--- | :--- | :--- |
| scripts/playwright_runner.py | Teste de navegador básico | python scripts/playwright_runner.py https://exemplo.com |
| | Com captura de tela | python scripts/playwright_runner.py <url> --screenshot |
| | Verificação de acessibilidade | python scripts/playwright_runner.py <url> --a11y |
Requer: pip install playwright && playwright install chromium
| Alvo | Como Encontrar |
| :--- | :--- |
| Rotas | Escanear app/, pages/, arquivos de roteador |
| Endpoints de API | Buscar (grep) por métodos HTTP |
| Componentes | Encontrar diretórios de componentes |
| Funcionalidades | Ler a documentação |
/\ E2E (Poucos)
/ \ Fluxos críticos do usuário
/----\
/ \ Integração (Alguns)
/--------\ API, fluxo de dados
/ \
/------------\ Componente (Muitos)
Peças individuais da UI
| Prioridade | Testes | | :--- | :--- | | 1 | Fluxos de usuário ("happy path") | | 2 | Fluxos de autenticação | | 3 | Ações críticas de negócio | | 4 | Tratamento de erros |
| Prática | Por que |
| :--- | :--- |
| Usar data-testid | Seletores estáveis |
| Esperar por elementos | Evitar testes instáveis (flaky) |
| Estado limpo | Testes independentes |
| Evitar detalhes de implementação | Testar o comportamento do usuário |
| Conceito | Uso | | :--- | :--- | | Page Object Model | Encapsular a lógica da página | | Fixtures | Configuração de teste reutilizável | | Assertions | Espera automática integrada (auto-wait) | | Trace Viewer | Depurar falhas |
| Configuração | Recomendação |
| :--- | :--- |
| Retentativas (Retries) | 2 no CI |
| Rastro (Trace) | on-first-retry |
| Capturas de tela | on-failure |
| Vídeo | retain-on-failure |
| Cenário | Valor | | :--- | :--- | | Sistema de Design | Alto | | Páginas de Marketing | Alto | | Biblioteca de Componentes| Médio | | Conteúdo Dinâmico | Baixo |
| Área | Testes | | :--- | :--- | | Status codes | 200, 400, 404, 500 | | Formato da resposta | Corresponde ao schema | | Mensagens de erro | Amigáveis ao usuário | | Casos de borda | Vazio, grande, caracteres especiais |
tests/
├── e2e/ # Fluxos completos de usuário
├── integration/ # API, dados
├── component/ # Unidades de UI
└── fixtures/ # Dados compartilhados
| Padrão | Exemplo |
| :--- | :--- |
| Baseado em feature | login.spec.ts |
| Descritivo | usuario-pode-fazer-checkout.spec.ts |
| Estratégia | Uso | | :--- | :--- | | Por arquivo | Padrão do Playwright | | Sharding | Suítes grandes | | Workers | Múltiplos navegadores |
| ❌ NÃO Faça | ✅ Faça | | :--- | :--- | | Testar a implementação | Testar o comportamento | | Esperas manuais (hardcode)| Use auto-wait | | Pular a limpeza | Isole os testes | | Ignorar testes instáveis | Corrija a causa raiz |
Lembre-se: Testes E2E são caros. Use-os apenas para caminhos críticos.
development
Revisar o código da UI para conformidade com as Web Interface Guidelines. Use quando solicitado para "revisar minha UI", "checar acessibilidade", "auditar design", "revisar UX" ou "verificar meu site em relação às melhores práticas".
testing
Princípios avançados de análise de vulnerabilidade. OWASP 2025, Segurança da Cadeia de Suprimentos (Supply Chain), mapeamento de superfície de ataque e priorização de riscos.
testing
Padrões e princípios de teste. Estratégias de testes unitários, de integração e mocking.
development
Princípios do workflow de Desenvolvimento Orientado a Testes (TDD). Ciclo RED-GREEN-REFACTOR.