Como e por que fazer shift-right testing

O conceito de shift-right testing (também chamado de “testing in production”) é simples, mas envolve uma certa ousadia: envolve realizar testes continuamente quando o software já está em ambiente de pós-produção. É um complemento à tradicional prática do shift-left testing, que consiste em incorporar testes o mais cedo possível no desenvolvimento, prevenindo problemas ao invés de detectá-los.

E onde está a “ousadia” na abordagem do shift-right testing? No fato de que sai do ambiente “seguro” do desenvolvimento e coloca a aplicação em contato com usuários, podendo trazer insights que dificilmente seriam obtidos de outra maneira.

Há uma série de técnicas de shift-right testing. Vamos falar das mais comuns.

Testes canários

Envolvem enviar atualizações a um pequeno grupo de usuários finais, sem que eles sejam notificados formalmente. Normalmente são alterações pequenas, que podem ser facilmente revertidas se necessário.

A ideia é monitorar a resposta dos usuários às mudanças na aplicação. Se a resposta for positiva, a atualização pode ser disponibilizada a todos; caso contrário, os desenvolvedores revertem a mudança e usam o feedback dos usuários para melhorar a atualização.

O nome do teste deriva de uma prática antiga, em que mineradores levavam canários para alertá-los sobre a presença de gases perigosos. No contexto dos testes, os usuários alertam sobre problemas nas alterações.

Testes A/B

Também conhecido como split testing, o teste A/B é muito comum em desenvolvimento para web. Consiste em criar uma versão alternativa de um produto (como uma landing page, por exemplo) e exibi-la para parte dos usuários. Normalmente altera-se apenas um tipo de elemento na versão alternativa, para poder testar isoladamente seu desempenho.

Uma empresa conhecida que utiliza testes A/B com frequência é a Netflix: com ajustes no algoritmo, na ordem dos filmes e séries e até nas imagens de capa dos produtos. Seus desenvolvedores conseguem encontrar variações mais efetivas a partir do feedback dos usuários.

User acceptance testing (UAT)

O UAT (termo em inglês para “teste de aceitação do usuário”) é talvez o que melhor incorpora a “ousadia” da qual falamos no início do artigo, pois coloca a aplicação em contato com o usuário final e deixa claro que se trata de um teste (ao contrário dos métodos anteriores, que são feitos de maneira velada).

Nesta abordagem, usuários escolhidos podem testar o software antes de seu lançamento oficial, para ver se está de fato pronto para ser lançado. Pode ser feito in-house, com voluntários ou usuários pagos para isso; ou por meio de versões de teste disponibilizadas ao público geral.

Existem diversos tipos de UAT, como beta testing (em que o feedback do usuário servirá como base para finalizar o desenvolvimento); black box testing (no qual o usuário testa funções específicas sem poder ver o código interno); e regulation acceptance testing (em que o foco está em descobrir se o software cumpre regulamentações legais).

Os benefícios do shift-right testing

Em essência, a grande vantagem da abordagem shift-right testing é fornecer insights a partir da experiência de usuários reais, que, por não estarem inseridos no ambiente de desenvolvimento, podem avaliar a aplicação de maneira mais objetiva e realista.

Esse tipo de feedback ajuda a reduzir certos riscos inerentes à entrega contínua, facilitando a detecção de bugs e dando base para alterações realmente efetivas. Além disso, favorece uma maior colaboração entre desenvolvedores, profissionais de QA e usuários.

A Prime Control oferece uma gama de opções de teste para a sua aplicação, incluindo práticas de shift-right testing. Clique aqui e agende sua conversa com um dos nossos especialistas.

 

Newsletter

Assine nossa newsletter e seja avisado sobre novos artigos, cases, eventos e muito mais.

E-books e Relatórios

Conheça nossa base de ebooks, artigos, relatórios e cases. Aprenda sobre as boas práticas de testes, qualidade de software e muito mais.

Tudo disponível para download gratuitamente.