Prime Control

6 formas de medir o ROI dos testes automatizados

Após decidir implementar a automação de testes, chega o momento de avaliar como está sendo o investimento. Mas como medir o retorno sobre investimento (ROI)?

O avanço de novas tecnologias e a demanda para ciclos de entrega mais rápidos estão fazendo o padrão de qualidade dos softwares aumentarem drasticamente. Tendências como automação, testes contínuos e DevOps estão trazendo velocidade e flexibilidade para o ciclo de vida de desenvolvimento de softwares, e muitos estão tendo dificuldade em acompanhar as mudanças. Para continuar competitivas, equipes de desenvolvimento são pressionadas a otimizarem seus testes e os processos de desenvolvimento precisam ocorrer em tempos cada vez menores, enquanto tentam manter os custos o mais baixo possível.

O equilíbrio perfeito de velocidade, qualidade e custos é o objetivo principal de qualquer equipe que almeja superar os desafios e alcançar o topo. Historicamente, as equipes de QA tiveram de abrir mão de um dos três itens. Se focar na velocidade de entrega, algum bug pode passar despercebido. Focando na qualidade, o prazo de entrega pode ser prejudicado. Todavia, implementando a automação de testes, a equipe não terá que abrir mão de nada.

A medida que se torna cada vez mais essencial a implementação de um processo de automação de testes para alcançar o equilíbrio entre estes três pontos chave, é preciso pensar em critérios para averiguar se o retorno sobre investimento (ROI) está dentro do esperado.

A equação do ROI é simples:

Ganhos – Investimentos
Investimentos

A dúvida principal que surge com isso é “o que define ganhos e investimentos?”. Considere os 6 pontos levantados neste artigo para estipular o valor monetário de curto e longo prazo que a automação de testes gerará. Porém, antes de adentrar nos benefícios da implementação, das ferramentas e os recursos necessários, vamos apresentar erros comuns na hora do cálculo do ROI.

Erros comuns no cálculo do ROI

Esses erros podem atrapalhar o sucesso da sua automação de testes, visto que eles atrapalham o cálculo do ROI, e com isso, prejudicam o planejamento. A transição de manual para automação é um grande investimento e para melhor definir o resultado esperado, é necessário um planejamento com benchmarks bem precisos. Cada empresa tem sua peculiaridade, a forma como definem, executam e mantém os testes variará de equipe para equipe. Essas variações influenciarão na forma que se mensura a ROI da automação. Os benefícios da automação são particulares para cada equipe, isso não pode ser generalizado.

Considere as seguintes variáveis particulares da empresa/equipe antes de começar.

  1. Necessidades comerciais na implementação.
  2. Casos de testes para cada necessidade.
  3. Porcentagem de testes que podem ser automatizados.
  4. A complexidade dos casos de teste.
  5. Os cases de testes necessários para fazer testes de regressão.
  6. O número total de configurações que vão ser testadas.

As 6 formas de mensurar o ROI da automação de testes

Comece quebrando a equação do ROI em duas partes e reveja como calcula os ganhos, assim como os investimentos.

Ganhos – Investimentos
Investimentos

O primeiro passo é calcular os seis seguintes gastos e as economias de custos para determinar o ROI.

  1. Automação de testes novos
  2. Automação de testes antigos
  3. Cobertura entre ambientes
  4. Defeitos que vazaram para produção
  5. Redundância e reutilização dos testes
  6. Perda de conhecimento

1. Automação de testes novos

Quando começar a construir casos de automação, o primeiro passo é identificar quanto esforço será preciso para automatizar os novos cases de teste. Quanto tempo vai levar para desenvolver, rodar e manter um teste automatizado? Neste passo, será importante decidir quais testes podem ser automatizados e quais devem continuar manual. Para chegar ao custo total, estipule o custo do serviço de cada membro da equipe que estiver executando os testes.

Cálculo 1 – O custo de automatizar testes novos   

# total de casos de testes 1000
Horas de desenvolvimento, execução e manutenção 0.5
Tempo Total da Automação 500 horas
Custo médio hora de automação por analista $43
# de analistas de automação 2
Custo Total $43.000

Melhores práticas para automação de testes novos

2. Automação de testes antigos

O segundo passo é calcular o custo da automação de testes antigos, ou seja, os testes de regressão. Teste de regressão é o processo de rodar testes antigos para garantir que as novas atualizações não introduziram ou reintroduziram bugs já depurados. Este tipo de teste é essencial para o sucesso de qualquer equipe, visto que garante a segurança de que os bugs depurados continuem assim e que as novas funções funcionem bem, sem entrar em conflito com os códigos antigos. Ao longo do tempo, esses casos vão ficando maiores e demandando mais tempo de execução. Implementar a automação de testes neste tipo permite rodá-los mais rapidamente e aumentar a confiança para a próxima entrega.

Cálculo 2 – O custo de automatizar testes de regressão

# total de testes de regressão 1000
Horas para manter cada teste 0.25
Tempo Total da Automação 250 horas
Custo médio hora de automação por analista $43
# de analistas de automação 2
Custo Total $21.500

Melhores práticas para automação de testes de regressão

3. Cobertura entre ambientes

O objetivo da automação de testes é aprimorar a qualidade do software, enquanto reduz custos e testa mais rapidamente. O rápido crescimento do número de aparelhos mobile, navegadores e sistemas operacionais no mercado, consequentemente aumentaram também a quantidade de cenários e combinações para se rodar testes. É um caso bastante improvável que se tenha 100% de certeza que os usuários só vão utilizar um navegador X e um aparelho Y para acessar o software desenvolvido. Com isso, é crucial calcular os custos de testar essa abrangência de cenários. Sem um teste em paralelo e a abrangência que ele oferece, existe um risco de encontrar defeitos ao longo do desenvolvimento. Quanto mais rápido o erro for encontrado, mais barato é para resolvê-lo. O custo da depuração em estágios mais avançados do ciclo de desenvolvimento é uma métrica para calcular o custo da abrangência de cenários.

Cálculo 3 – Os custos reduzidos ao garantir a abrangência certa

Custo do Laboratório de Dispositivos
# de dispositivos
Custo médio por dispositivo
Custo da manutenção do laboratório
Vazamento de defeitos
Erros que podem passar despercebidos por falta de cobertura
Horas para consertar os erros
Ferramenta
Custo de uma ferramenta cross-browser

Melhores práticas para garantir a abrangência certa dos testes

Aumente a abrangência de cenários rodando testes cross-browser, de unidade, de regressão e de fumaça em paralelo.

4. Redução no vazamento de defeitos

O vazamento de erros se refere a quantidade de bugs ou falhas que sobrevivem até a produção por não terem sido detectadas antes durante o ciclo de vida de desenvolvimento de softwares. Isto pode ser o resultado de inúmeras questões, como cobertura de testes ruins ou ambientação fraca. A métrica chave desta questão são os custos (dinheiro e tempo) gastos com correções e patches após a entrega.

Cálculo 4 – Os custos ligados com vazamento de defeitos

Vazamento de defeitos
Por falta de abrangência funcional
Por requisitos ausentes
Horas usadas para consertar defeitos consolidados

Melhores práticas para evitar vazamento de erros

Encontre-os durante os ciclos iniciais de desenvolvimento. Quanto mais cedo testar, mais cedo encontrará os bugs. Esta é a ideia principal que a tendência crescente “shifting left”. Diferente do modelo cascata tradicional que testadores e desenvolvedores estão separados, “shifting left” almeja corrigir este equívoco. Os testadores são encarregados de averiguar uma atualização de software assim que ela é criada. Os desenvolvedores podem até mesmo rodar testes enquanto ainda estão na fase de desenvolvimento. O objetivo maior aqui é encontrar bugs o mais cedo possível, poupando uma quantia considerável de dinheiro e tempo.

5. Redundância e reutilização dos testes

O propósito de acompanhar a capacidade de reutilização dos testes e suas etapas redundantes é para evitar perda de tempo. Não há necessidade em criar um teste Y para A, se X já cumpre este papel. Mas para evitar a criação desnecessária, é preciso saber quais testes já existem e qual a função deles. Sabendo destas informações, é possível aprimorar os ciclos de testes, reutilizando ao invés de criando testes redundantes. Para calcular este custo, é preciso saber o número de testes redundantes ou duplicados, o tempo gasto na busca e o tempo gasto no desenvolvimento e execução dos testes.

Cálculo 5 – Os gastos poupados ao reduzir redundância

Melhores práticas para reduzir o número de testes redundantes

6. Perda de conhecimento

Esta é a métrica mais esquecida na hora de calcular o ROI da automação de testes. O tempo de carreira médio de um analista de teste em uma empresa é de 3 a 5 anos. Quando o testador sai, conhecimento institucional é perdido. Para garantir um bom ROI de longo prazo com a automação, é importante tomar cuidado com a perda de conhecimento. Terão casos de testes que precisarão ser reprogramados após a saída de um colaborador, isto gera um custo pesado.

Cálculo 6 – O custo poupado ao reduzir perda de conhecimento

Melhores práticas para evitar perda de conhecimento

Investimento na Automação: Ferramentas e Recursos

Os investimentos em ferramentas e recursos necessários para a transição de um processo de automação de testes. ROI da automação:

Ganhos – Investimentos
Investimentos

1. Ferramentas

Existem várias ferramentas de automação de testes disponíveis no mercado, escolher a certa pode ser uma tarefa árdua. Fizemos uma lista com as 10 mais usadas. Durante a busca pela ferramenta ideal, não veja apenas as funcionalidades e os custos, também veja o tempo e os recursos necessários para a implementação efetiva. Leve os seguintes pontos em consideração:

2. Recursos

É pouco provável que todos na equipe tenham conhecimento e experiência em automação. Quando o assunto é recursos, meça quanto tempo será preciso para a ferramenta estar operacional. Será essencial um investimento no conhecimento de automação da equipe, utilizando treinamentos ou contratando alguém que já saiba.

ROI da automação de testes

Com todos os pontos, custos e métricas apresentados, agora é possível calcular o ROI de curto e longo prazo. O resultado será parecido com o seguinte: Nossa equipe pode poupar X depois de um ano. Em Y, podemos poupar Z.

Com o passar de um, dois ou até mesmo cinco anos, o ROI do investimento em automação terá crescido exponencialmente.

Além dos valores quantitativos, com o passar do tempo será possível perceber os valores qualitativos da automação. Por exemplo, em alguns anos os processos de testes e os resultados estarão mais maduros, permitindo maior abrangência e otimização do tempo. Ao automatizar os testes continuamente, a equipe poderá rodar testes em vários cenários rapidamente e reduzir o risco de redundância e vazamento de defeitos. O número de dispositivos e plataformas tecnológicas para o usuário final continuará a crescer, a capacidade de acompanhar e o sucesso disto está diretamente ligado a habilidade em automatizar. Com um processo sólido de testes de software implementado, é possível dedicar mais tempo na criação e aprimoramento de novas funções, assim como na melhoria da qualidade da entrega, resultando em aumento de competitividade no mercado.

Sair da versão mobile