1.1. Propósito da automação do teste

Tópico - Progresso:

1.1.1 – (K2) Explicar os objetivos vantagens desvantagens e limitações da automação dos testes de software.

Conceitos-chave:
Testes de API, Testes de CLI, Teste de GUI, Sistema sob Teste – SUT, Arquitetura de Automação de Teste – TAA, Estrutura de Automação de Teste – Framework, Estratégia de Automação de Teste, Automação de Teste, Script de Teste e Testware.

A automação de teste, incluindo a execução automatizada, contempla as seguintes tarefas:

  • Utilizar ferramentas de software para controlar e configurar pré-condições de teste;
  • Executar testes;
  • Comparar os resultados reais com os resultados previstos.

A separação entre o TAS e o SUT é uma boa prática para minimizar a interferências.

A automação de teste ajuda na execução dos casos de teste de forma consistente e repetidamente em diferentes versões do SUT.

Além da execução automatizada envolve um processo de criação do testware, incluindo:

  • Software;
  • Documentação;
  • Casos de teste;
  • Ambientes de teste;
  • Dados de teste.

Esses testware estão associados às seguintes atividades de teste automatizado:

  • Implementação de casos de teste;
  • Monitoramento e controle da execução de testes;
  • Interpretação, relato e registro dos resultados dos testes.

Podemos usar abordagens diferentes de automação para interagir com o SUT, executando o teste através :

  • das interfaces públicas para classes, módulos ou bibliotecas do SUT (Teste de API);
  • da interface de usuário do SUT (Por exemplo: Teste de GUI ou CLI);
  • de um serviço ou protocolo.

OBJETIVOS

VANTAGENS

Testes executados mais rapidamente, permitindo executar mais testes por build, e menos sujeitos a erros do testador.

Testes podem ser mais complexos, fazendo uso mais efetivo dos recursos de teste, permitindo criar testes que não podem ser feitos manualmente (performance).

Feedback mais rápido sobre a qualidade do software. Melhoria da confiabilidade e consistência do software.

DESVANTAGENS

LIMITAÇÕES

Nem todos os testes manuais podem ser automatizados.

A automação só consegue interpretar resultados reconhecidos por computador e previsto por um oráculo de teste.

Não substitui um teste exploratório.