Software QA & Testing: 5 chaves para o sucesso!

 marc-mueller-210523-unsplash

*Texto original, em inglês, por Ernesto Davila. Para acessá-lo, clique aqui.

Quando se trata de transformação digital, o que separará os vencedores dos perdedores?

A velocidade certamente será um indicador claro. Hoje, as empresas exigem uma capacidade de resposta imediata às necessidades do cliente e às oportunidades de mercado. Para manter este ritmo, as empresas estão se voltando aos modelos Cloud e Agile e às plataformas móveis, cujo objetivo é entrega de funcionalidades com mais velocidade, além da melhoria da satisfação do usuário final. Dito isto, sacrificar a qualidade e a segurança pela velocidade simplesmente não é uma opção. Como resultado, Quality Assurance e Testing se fazem mais importantes do que nunca.

Com o aumento das pressões competitivas, as empresas precisam aumentar suas estratégias de desenvolvimento de software. As ferramentas de Inteligência Artificial (AI), análise e automação podem melhorar significativamente a velocidade e a qualidade dos aplicativos e apoiar a otimização do processo. O Gartner prevê que, até 2020, cerca de metade das empresas terão implementado com sucesso essas inovações.

A questão então se torna: nos próximos 18 meses, o que farão diferente aqueles que adotaram as tecnologias corretamente?

Confira abaixo as cinco chaves para o sucesso em uma estratégia de QA e Testing:

1: Uso estratégico de Automation Testing

Um mindset estratégico caracterizada por "Automação com propósito" pode identificar os casos de teste que mais se beneficiarão com a automação e adaptar as ferramentas cognitivas ao ambiente específico no qual elas são implantadas. Ao testar alterações de código, isso permite a reutilização de scripts e artefatos automatizados, resultando em tempos de liberação mais rápidos para produção e ROI significativamente aprimorado. Isso é particularmente crítico para o teste de regressão, que envolve o novo código para verificar se uma nova alteração no código não afeta o código escrito anteriormente.

Na ausência dessa análise do ambiente de desenvolvimento, as iniciativas tornam-se exercícios ad hoc de frustração. A automação de scripts de teste em uma base aleatória e única resulta em mais tempo gasto na manutenção de scripts automatizados, em vez de aumentar os conjuntos de regressão de teste, essencialmente anulando o propósito da automação.

2: Testando cedo e sempre

O provérbio "melhor prevenir do que remediar" é extremamente relevante para o princípio do “shift left testing”, que é baseado na lógica simples que os defeitos identificados no início do ciclo de vida do desenvolvimento - onde é mais provável que ocorram - são mais fáceis e menos caros para consertar.

3: Abordagem Estratégica ao Risco

Um princípio de Testing estabelecido é que testes exaustivos são impossíveis - a combinação potencial de navegadores, dispositivos e sistemas operacionais para avaliar é praticamente ilimitada. Uma estratégia eficaz, portanto, avalia o portfólio de aplicativos com base em três fatores:

  • Criticidade
  • Impacto nos negócios
  • Complexidade

Concentrando-se nessas variáveis, uma equipe pode identificar e isolar os riscos que exigem a maior parte do foco em termos de QA e Testing.

4: Evoluir da detecção de defeitos para a prevenção de defeitos

A implementação efetiva de recursos humanos e de automação, juntamente com uma abordagem estratégica de risco, pode ajudar a função de controle de qualidade a evoluir de uma postura de detecção de defeitos para uma de prevenção de defeitos.

Esta transição de resolver problemas para eliminá-los - um critério chave do Nível 5 do índice TMMi (Test Maturity Model Integrated) - é caracterizada pela análise de causa raiz de defeitos de projetos anteriores, seguida por ações para evitar a recorrência desses problemas em novos projetos.

Assim, em vez de reagir de forma reativa aos defeitos que surgem em um determinado projeto, as equipes aplicam as lições aprendidas para implementar medidas proativas e evitar que os defeitos se repitam.

5: Testes contínuos

A combinação de automação inteligente, expertise integrada, gerenciamento de riscos e prevenção de defeitos pode criar um ciclo virtuoso de melhoria contínua. Aqui, a automação é aplicada a um escopo de funções cada vez mais amplo, enquanto os testadores humanos se concentram em tarefas cada vez mais complexas e o volume geral de defeitos diminui constantemente.

A tecnologia em andamento e o refinamento do processo também podem suportar o modelo de testes “apenas o suficiente” em cada estágio do pipeline de entrega. Essa utilização ideal dos recursos requer uma relação estratégica entre trabalho digital e trabalho humano, em que a automação é aplicada o mais profundamente possível em tarefas de baixa e média complexidade, enquanto o teste manual se concentra em tarefas complexas e de alto valor que exigem conhecimento comercial.

Novos desafios, novas oportunidades

A integração da automação inteligente na função de teste, associada a um uso estratégico dos recursos humanos, pode melhorar significativamente a produtividade e a eficácia da função de QA e Testing e das equipes de teste ágil.

Basicamente, a ideia é atribuir os trabalhos simples aos robôs e os trabalhos complexos aos humanos.