Pular para o conteúdo principal

5 Análise de Impacto da Automação de Teste

5.1 Investimento na Configuração e Manutenção da Automação de Teste

5.1.1 Demonstrar o retorno sobre o investimento da criação de uma solução de automação de teste

Cálculo de "Return of Investment":

ROI=EconomiaInvestimento\large \text{ROI} = \frac{\text{Economia}}{\text{Investimento}}

  • Usar na Economia:

    • Tempo de execução manual
    • Tempo de execução automatizada
    • Número de casos de teste
    • Número de execuções de teste
  • Usar no Investimento:

    • Tempo para configurar a automação
    • Tempo médio de desenvolvimento
    • Número de scripts
    • Tempo médio de manutenção
    • Tempo de execução
    • Porcentagem de scripts falhos
    • Número de casos de teste
    • Número de execuções

IMPORTANTE:

O projeto deve durar tempo suficiente para que o "ponto de virada" do ROI funcione; Senão o ROI não vale a pena.

A automação deve ser realizada no nível correto da pirâmide de teste para que o ROI seja mais efetivo.

5.2 Métricas de Automação de Teste

5.2.1 Classificar métricas para a automação de teste

Análises de dados são importantes para as tomadas de decisões.

  • Adequação do TAS ao projeto
  • Adaptabilidade do TAS
  • Capacidade de manutenção

O custo da medição deve ser o mais baixo possível.

Métricas importantes:

  • Taxa de aprovação/reprovação
    • Fórmula que indica a efetividade do sistema ao atingir o resultado esperado
    • Taxa=quantidade de testes aprovadosquantidade de testes reprovados\large \text{Taxa} = \frac{\text{quantidade de testes aprovados}}{\text{quantidade de testes reprovados}}
  • Proporção de falhas e defeitos
    • Levanta se um único defeito quebrou vários testes
    • Ajuda a evidenciar se o defeito está vinculado à infraestrutura ou subsistemas.
  • Tempo de execução da automação de teste
    • À medida que os casos aumentam, essa métrica se torna importante
    • Inclui o tempo de construção do TAS
  • Número de casos de teste automatizados
    • Indica o progresso feito
    • Cuidado, pois o número de casos não indica o nível de cobertura
  • Cobertura funcional de automação
    • Casos funcionais implementados
  • Cobertura do código
    • Cobertura de teste de componente (unitário)
    • É difícil alcançar 100%, mas quanto maior, melhor

5.3 O Valor da Automação de Teste no Nível do Projeto e da Organização

5.3.1 Identificar as considerações organizacionais para o uso da automação de teste

  • Políticas e práticas de desenvolvimento de software
    • Verificar como as equipes trabalham
    • Documentação disponível
    • Padrões de codificação definidos
  • Projetos de automação de teste ativos existentes e seu status
    • Validar projetos existentes e status
    • Reutilizar alguma TAS existente
  • Os Especialistas no Assunto (SME) da organização para automação de teste
    • Procurar SME que possa ajudar na implementação
    • Os SME podem compartilhar lições aprendidas
  • Disponibilidade de ambientes de teste
    • Reunir informações sobre ambientes de teste
    • Um novo projeto pode precisar de um novo ambiente
  • Ferramentas e licenças de teste
    • Licenças que a organização já possui
    • Identificar ferramentas que podem reduzir o cronograma

5.3.2 Analisar as características do projeto que ajudam a determinar a implementação ideal dos objetivos do teste de automação de teste

Os objetivos do teste dependem das características.

Domínio

  • Ambiente em que as regras de negócio se propõem a lidar.
  • Ex: Turismo, Saúde, Segurança, Financeiro, ...
  • Cada domínio possui restrições, riscos e padrões específicos.

Plataformas

  • Quais ambientes e dispositivos são necessários na cobertura.
  • Quais plataformas o projeto abrange.
      • Plataformas = + Dificuldade
  • Móveis, Web, Embarcados, ...

Linguagem de Programação e Conjunto de Tecnologias

  • Recomenda-se usar as mesmas linguagens de programação que os devs
    • Facilita a colaboração
    • Aprendizagem cruzada
    • Facilita a integração SUT e conhecimento dos TAE

Maturidade do Projeto

  • Número de casos de teste
    • Muitos casos requerem análise mais profunda de abordagem
  • Pipelines
    • Quais testes podem ser realizados junto ao pipeline
  • Número de testadores
    • Determina o prazo de execução do projeto
  • Linha do tempo
    • Se o projeto possui um prazo curto de implementação de TAS

Participação dos Stakeholders

  • Stakeholders podem não aceitar os testes com medo de que comprometam:
    • Velocidade de desenvolvimento
    • Prazo
    • Orçamento
  • Identificar os riscos do produto
  • Precisam estar cientes do plano de TAS e seus marcos (objetivos)

Conhecimento e Experiência da Equipe

  • Usar conhecimento de teste para determinar objetivos
  • Gestores de Teste criam uma matriz de competência e habilidades
    • Identifica conhecimentos disponíveis
    • Identifica lacunas
    • Traça diferentes objetivos
    • Atribui tarefas com precisão

Suporte ao Gerenciamento

  • Definir objetivos que possam ser cumpridos e medidos
  • Documentação concisa
  • Definir lacunas e custos futuros

Características de Qualidade

  • ISO/IEC 25010:2011 define características de qualidade
  • São citadas no CTFL 2.2.2 "Tipos de Teste"
  • Usadas para definir métricas do TAS

5.4 Decisões tomadas com base em Relatórios de Automação de Teste

5.4.1 Analisar os dados do relatório de teste para tomada de decisões

  • Formato e conteúdo de um relatório de automação podem variar
  • Pode ser criado por stakeholders gerenciais, operacionais ou técnicos
  • Um relatório pode ser incorporado em outro mais amplo
  • Dados coletados podem ajudar:
    • Identificar tendências e causas raiz
    • Transferência de recursos
      • Transferir os esforços de automação para manutenção
      • Transferir os esforços de melhoria para desenvolvimento do TAF
      • Adicionar recursos à TAS geral
    • Abordagem
      • Aumentar o Shift-Left e Shift-Right
      • Expandir a cobertura funcional da automação em sprints
      • Concentrar-se em grupos de defeitos
    • Aconselhamento
      • Aconselhar os devs sobre áreas de melhoria
      • Aconselhar sobre SDLC
      • Alterar o tipo de conteúdo apresentado em relatórios