Integração com TestRail
Sincronização bidirecional entre testes Playwright e o gerenciamento de testes TestRail.
Pré-requisitos
As variáveis de ambiente devem estar configuradas:
TESTRAIL_URL— ex.:https://sua-instancia.testrail.ioTESTRAIL_USER— seu e-mailTESTRAIL_API_KEY— chave de API do TestRail
Se não estiverem configuradas, informar ao usuário como configurá-las e parar.
Capacidades
1. Importar Casos de Teste → Gerar Testes Playwright
/pw:testrail import --project <id> --suite <id>
Passos:
- Chamar a ferramenta MCP
testrail_get_casespara buscar os casos de teste - Para cada caso de teste:
- Ler título, pré-condições, passos, resultados esperados
- Mapear para um teste Playwright usando o template apropriado
- Incluir o ID do caso TestRail como anotação do teste:
test.info().annotations.push({ type: 'testrail', description: 'C12345' })
- Gerar arquivos de teste agrupados por seção
- Relatório: X casos importados, Y testes gerados
2. Enviar Resultados de Testes → TestRail
/pw:testrail push --run <id>
Passos:
- Executar testes Playwright com o reporter JSON:
npx playwright test --reporter=json > test-results.json - Analisar resultados: mapear cada teste para seu ID de caso TestRail (das anotações)
- Chamar a ferramenta MCP
testrail_add_resultpara cada teste:- Aprovado → status_id: 1
- Reprovado → status_id: 5, incluir mensagem de erro
- Pulado → status_id: 2
- Relatório: X resultados enviados, Y aprovados, Z reprovados
3. Criar Execução de Testes
/pw:testrail run --project <id> --name "Sprint 42 Regression"
Passos:
- Chamar a ferramenta MCP
testrail_add_run - Incluir todos os IDs de casos de teste encontrados nas anotações dos testes Playwright
- Retornar o ID da execução para envio de resultados
4. Status de Sincronização
/pw:testrail status --project <id>
Passos:
- Buscar casos de teste do TestRail
- Escanear testes Playwright locais por anotações TestRail
- Reportar cobertura:
Casos TestRail: 150 Testes Playwright com IDs TestRail: 120 Casos TestRail sem vínculo: 30 Testes Playwright sem IDs TestRail: 15
5. Atualizar Casos de Teste no TestRail
/pw:testrail update --case <id>
Passos:
- Ler o teste Playwright para este ID de caso
- Extrair passos e resultados esperados do código de teste
- Chamar a ferramenta MCP
testrail_update_casepara atualizar os passos
Ferramentas MCP Utilizadas
| Ferramenta | Quando |
|---|---|
testrail_get_projects |
Listar projetos disponíveis |
testrail_get_suites |
Listar suites no projeto |
testrail_get_cases |
Ler casos de teste |
testrail_add_case |
Criar novo caso de teste |
testrail_update_case |
Atualizar caso existente |
testrail_add_run |
Criar execução de testes |
testrail_add_result |
Enviar resultado individual |
testrail_get_results |
Ler resultados históricos |
Formato de Anotação de Teste
Todos os testes Playwright vinculados ao TestRail incluem:
test('should login successfully', async ({ page }) => {
test.info().annotations.push({
type: 'testrail',
description: 'C12345',
});
// ... código do teste
});
Esta anotação é a ponte entre Playwright e TestRail.
Saída
- Resumo da operação com contagens
- Quaisquer erros ou casos sem correspondência
- Link para a execução/resultados no TestRail