Shift-Right e os testes de aplicações em ambiente de produção

Empresas globais estão praticando ativamente técnicas de Shift-Right, mas elas ainda são raras e estão em estágio inicial no Brasil

Author Photo
4:23 pm - 10 de junho de 2021

Uma pesquisa de 2019, realizada pela Capgemini e pela Broadcom, revelou que o teste em produção foi avaliado por 45% dos CIOs entrevistados como prática número 1 implementada ou planejada. Além disso, os dados revelaram que as empresas estão praticando ativamente técnicas de Shift-Right. Na contramão dos dados apresentados pelo estudo global, no Brasil, as técnicas de Shift-Right ainda são muito raras e encontram-se em estágio inicial.

A defasagem do nosso país em relação à abordagem acarreta atrasos no desenvolvimento de softwares efetuados pelas empresas brasileiras, pois, o Shift-Right vai além dos tradicionais testes de carga e possibilita análises de casos de uso e contínuos feedbacks de usuários. Esta abordagem também permite que desenvolvedores tenham novos insights, encontrem e solucionem problemas não identificados no ambiente de desenvolvimento.

Por propor abordagens mais gradativas e experimentações, o Shift-Right viabiliza testes diferenciados, alimentando as equipes de QA com informações que não estão disponíveis nos testes iniciais.

Dentre os muitos benefícios acarretados pela abordagem, podemos citar:

– Redução de riscos inerentes à entrega contínua;

– Feedbacks abrangentes baseados em casos de uso reais;

– Liberação de versões de modo gradual e controlado;

– Melhor entendimento da experiência do usuário.

Testar em produção é importante. Contudo, a abordagem Shift-Right vai além e propõe diversas técnicas. Entre elas:

Testes canários

Com o objetivo de monitorar as respostas dos usuários às mudanças no software, atualizações são enviadas a um número limitado de utilizadores sem que estes sejam notificados. O feedback é aproveitado para a realização de alterações necessárias e como indicador para a decisão do lançamento oficial da atualização.

Testes A/B

Útil para testar elementos isoladamente, principalmente buscando-se aprimorar a usabilidade, esta técnica consiste na criação de uma versão alternativa do produto que será exibida para um grupo de usuários. A partir do feedback, é possível encontrar variações mais efetivas.

Blue-Green Deployment

Excelente para reduzir o risco de downtime, a implantação Blue-Green consiste em manter duas infraestruturas idênticas em produção. Enquanto os usuários ficam hospedados no ambiente “blue”, uma nova versão da aplicação pode ser implantada no ambiente “green”, onde a equipe responsável desenvolverá uma bateria de testes para garantir a qualidade e o bom funcionamento da mesma. Após a fase de testes, os administradores podem transferir o tráfego de usuários de um ambiente para o outro progressivamente.

Além de oportunizar a execução de mais testes em ambiente de qualidade antes de tornar uma nova versão pública, esta técnica também possibilita que, em caso de falhas, os administradores revertam o tráfego de usuários para o ambiente “blue”, permitindo que o sistema esteja sempre disponível.

Sandbox

Desenvolvido com o objetivo de representar um ambiente de produção, o ambiente em Sandbox permite que desenvolvedores testem versões específicas, identifiquem vulnerabilidades, validem melhorias, novos códigos e recursos recentes. Por viabilizar experimentações com dados de produção em ambientes realistas e isolados, a metodologia possibilita a identificação de problemas em potencial sem o risco de complicações de compatibilidade provocados por programas em execução em segundo plano.

Apesar da sinergia com a técnica de Blue-Green Deploy, no Sandbox, não há necessidade da transferência do tráfego de usuários. Deste modo, apenas pessoas autorizadas pela equipe de QA, tem acesso ao ambiente para realizar os testes necessários.

A despeito da imaturidade do Brasil na prática do Shift-Right Testing, a pesquisa ISG Provider Lens Next-gen Application Development & Maintenance (ADM) Services 2020 mostrou que a maioria das organizações brasileiras faz uso da técnica Shift-Left, na qual o objetivo é barrar erros na fase de desenvolvimento. Se levarmos em conta que o Shift-Left é considerado um pré-requisito para a implementação de Shift-Right, é possível presumir que tal fato é um ponto a favor das empresas no que diz respeito ao progresso das mesmas na preocupação com a qualidade do software.

Estas são apenas algumas das técnicas inclusas no conjunto de práticas reconhecido como Shift-Right Testing. Como especialista em QA, acredito que as companhias têm muito a ganhar aderindo a esta abordagem. Trata-se de uma estratégia complementar de suma importância na busca pela satisfação do usuário e pela segurança dos dados e operações.

* Everton Arantes é fundador e CEO da Prime Control

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.