📊 Relatórios e Cobertura
📋 Visão Geral
O projeto Robot Framework implementa um sistema abrangente de relatórios e monitoramento que fornece insights detalhados sobre a execução dos testes, logs de execução, screenshots de falhas e métricas de performance.
📈 Relatórios HTML
🎯 Configuração
O projeto utiliza o reporter HTML padrão do Robot Framework para gerar relatórios visuais interativos com análise detalhada de cada execução de teste.
📊 Características dos Relatórios
- Interface Interativa: Navegação intuitiva pelos resultados
- Detalhamento por Teste: Informações específicas de cada cenário
- Timeline de Execução: Visualização temporal dos testes
- Filtros Avançados: Busca por status, duração e tags
- Métricas de Performance: Análise de tempo de execução
- Screenshots: Capturas automáticas em caso de falha
🚀 Geração e Visualização
# Executar testes (gera relatório automaticamente)
make test-all
# Visualizar relatório HTML
open results/reports/report.html
# Executar com screenshots
BROWSER_OUTPUTDIR=results/screenshots robot --outputdir results/reports tests/specs
📁 Estrutura dos Relatórios
results/
├── reports/ # Relatórios HTML
│ ├── report.html # Relatório principal
│ ├── log.html # Log detalhado
│ ├── output.xml # Dados XML
│ └── pabot_results/ # Resultados paralelos (se aplicável)
│ ├── pabot_results_1/
│ ├── pabot_results_2/
│ └── ...
├── logs/ # Logs de execução
│ ├── robot_log.txt # Log principal
│ └── pabot_log.txt # Log de paralelização
└── screenshots/ # Screenshots de falhas
├── screenshot_1.png
├── screenshot_2.png
└── ...
📁 Estrutura de Resultados Paralelos
results/reports/
├── pabot_results/ # Resultados paralelos
│ ├── pabot_results_1/ # Processo 1
│ │ ├── report.html
│ │ ├── log.html
│ │ └── output.xml
│ ├── pabot_results_2/ # Processo 2
│ │ ├── report.html
│ │ ├── log.html
│ │ └── output.xml
│ └── ...
├── report.html # Relatório consolidado
├── log.html # Log consolidado
└── output.xml # Dados XML consolidados
📝 Logs e Debugging
⚙️ Configuração de Logging
# Executar com logs detalhados
robot --loglevel DEBUG --outputdir results/reports tests/specs
# Executar com logs específicos
robot --loglevel INFO --outputdir results/reports tests/specs
📊 Níveis de Log
- TRACE: Informações muito detalhadas
- DEBUG: Informações detalhadas para debugging
- INFO: Informações gerais de execução
- WARN: Avisos sobre situações anômalas
- ERROR: Erros que não impedem a execução
🔍 Logs Específicos
- Browser: Logs de interação com o navegador
- API Calls: Logs de requisições HTTP
- Test Execution: Logs de execução dos testes
- Keyword Execution: Logs de execução de keywords
📊 Métricas e Análise
🎯 Métricas Disponíveis
- Taxa de Sucesso: Percentual de testes que passam
- Tempo de Execução: Duração média e total dos testes
- Flaky Tests: Identificação de testes instáveis
- Performance: Análise de tempo de resposta por teste
- Paralelização: Eficiência da execução paralela
📈 Dashboard de Métricas
O relatório HTML inclui:
- Resumo Executivo: Visão geral dos resultados
- Gráficos de Performance: Visualização temporal
- Análise de Falhas: Detalhamento de erros
- Comparação Histórica: Tendências ao longo do tempo
- Análise de Tags: Performance por categoria
🛠️ Configurações Avançadas
🔧 Personalização de Relatórios
# Executar com configurações específicas
robot --outputdir results/reports \
--log log.html \
--report report.html \
--output output.xml \
--loglevel INFO \
tests/specs
📊 Múltiplos Formatos
- HTML: Relatório visual interativo
- XML: Dados estruturados para integração
- TXT: Logs em formato texto
- JSON: Dados em formato JSON (com plugins)
📋 Boas Práticas
🎯 Otimização de Relatórios
- Screenshots: Configurar apenas para falhas em produção
- Logs: Usar nível apropriado para cada ambiente
- Cleanup: Implementar limpeza automática de relatórios antigos
- Aggregation: Consolidar relatórios de execuções paralelas
📊 Análise de Resultados
- Revisar Falhas: Analisar screenshots e logs de falhas
- Monitorar Performance: Acompanhar tendências de tempo de execução
- Identificar Flaky Tests: Corrigir testes instáveis
- Documentar Padrões: Registrar padrões de falha para melhorias
🔧 Configurações de Performance
# Makefile - Configurações otimizadas
PROCESSES = 4
OUTPUT_DIR = results/reports
OUTPUT_DIR_BROWSER = results
test-all: clean
@echo "Executando todos os testes com Robot Framework..."
BROWSER_OUTPUTDIR=$(OUTPUT_DIR_BROWSER)/screenshots robot --outputdir $(OUTPUT_DIR) $(TESTS_DIR)
parallel: clean
@echo "Executando testes em paralelo com Pabot..."
BROWSER_OUTPUTDIR=$(OUTPUT_DIR_BROWSER)/screenshots pabot --processes $(PROCESSES) --outputdir $(OUTPUT_DIR) $(TESTS_DIR)
📈 Métricas de Qualidade
- Tempo Máximo: 15 minutos para execução completa
- Taxa de Sucesso: 95% de testes passando
- Paralelização: 4 processos para otimização
- Screenshots: Capturas automáticas em falhas
🚀 Comandos Úteis
📊 Visualização de Relatórios
# Abrir relatório principal no navegador
open results/reports/report.html
# Abrir log detalhado no navegador
open results/reports/log.html
# Ver resumo no terminal
robot --outputdir results/reports tests/specs
🔍 Debugging
# Executar com logs detalhados
robot --loglevel DEBUG --outputdir results/reports tests/specs
# Executar teste específico
robot --outputdir results/reports tests/specs/login.robot
# Executar com tag específica
robot --outputdir results/reports --include login tests/specs
# Executar com screenshots
BROWSER_OUTPUTDIR=results/screenshots robot --outputdir results/reports tests/specs
🧹 Limpeza e Manutenção
# Limpar relatórios antigos
make clean
# Limpar apenas logs
make clean-logs
# Verificar qualidade do código
make lint
# Formatar arquivos
make tidy