Testes automatizados – Modelagem do log

Os testes automatizados ajudam, e muito, a testar alguns modelos de aplicações. Para decidir se sua aplicação merece uma bateria de testes automatizados, veja o post  Testes manuais ou automação : qual a melhor opção?, no qual tratamos dessa questão.

Toda bateria de testes automáticos deve conter um log legível e bem estruturado para facilitar o rastreio das falhas.

Testes automaticos (Log)

O que deve, obrigatoriamente, conter no log?

  • Método de teste executado.
  • Data e hora da execução do teste.
  • Duração da execução do teste ( Hora de inicio do script e hora do fim do script).
  • Resultado do teste: passou ou falhou?

Se falhou:

    • Linha de código em que ocorreu a falha.
    • Descrição da falha.
    • Stack trace.

Elementos que complementam um bom log

Alguns dados não são obrigatórios para rastrear uma falha, mas podem ajudar muito a identificar o causador da ação indesejada.

  • Prints sequenciais ou vídeo da tela no decorrer da execução. ( Em alguns casos, a linha de código apontada não é exatamente o local onde a falha se origina. O problema pode ter sido originado em algum ponto anterior do código e esse tipo de situação pode ser mais rapidamente identificada com o auxílio de imagens).
  • Dados de entrada dos eventos.
  • Número de interações em loops.
  • Agrupamento de métodos que falharam pelo mesmo erro.

Um fator muito relevante para o rastreamento de falhas no log é a organização visual dos elementos. Dados em ordem cronológica e com espaçamento correto para dar boa legibilidade são de fundamental importância.

Vale ressaltar que as ferramentas de automação de testes atuais não apresentam um log estruturado da maneira que foi apresentada aqui (e.g., nem todas possuem recurso nativo para geração de vídeo). É necessário implementar alguns scripts manualmente para conseguir um resultado desse tipo, mas pode ser um bom investimento de tempo, dependendo do tipo de aplicação.

About Pedro Costa