Implemente testes na sua empresa com o Chrome

Imagine que o software mais importante da sua empresa quebra de repente. O que aconteceria? Os pedidos podem ser perdidos, os prazos podem ser perdidos, mas os clientes definitivamente vão reclamar.

Esse cenário de pesadelo pode ser evitado: implementando um processo de teste contínuo e rigoroso, que detecta problemas antes que eles causem caos. Mas implementar esse processo na sua organização é mais fácil falar do que fazer.

Este artigo mostra tudo o que você precisa considerar ao começar a fazer testes na sua empresa e como se beneficiar deles a longo prazo.

Práticas recomendadas de testes para equipes de produtos

A primeira parte deste artigo aborda o processo de início da implementação de testes no seu fluxo de trabalho.

Implementar uma cultura de testes na sua equipe

Para introduzir os testes na sua equipe, é necessário que todos compartilhem uma mentalidade comum e considerem a qualidade não como uma carga, mas como um investimento. Esse é um processo que, como qualquer outra mudança cultural, exige tempo e consistência.

Uma coisa que pode ajudar a moldar essa cultura são reuniões regulares para discutir defeitos, o impacto que eles tiveram, de onde vieram e o que foi necessário para corrigi-los. Isso ajuda a conscientizar as pessoas sobre por que é bom evitar esses defeitos desde o início.

Ter uma pessoa dedicada na equipe que supervisiona e impulsiona o esforço pode aumentar muito as chances de sucesso. Alguém que define diretrizes para a equipe ou até mesmo para toda a organização, coleta e compartilha as práticas recomendadas e defende o esforço em todos os níveis.

Outro instrumento útil é alternar a função de suporte do seu produto. Receber insights diretos e não filtrados dos clientes e aprender sobre os problemas diários que eles enfrentam com seu produto pode ser uma experiência valiosa para gerentes de produto, designers e desenvolvedores.

O objetivo é que todos na sua equipe entendam que a qualidade é um recurso, tão importante quanto qualquer outra funcionalidade que você cria para o produto. Depois que todos adotaram essa mentalidade, foi uma progressão natural entender que os testes também são um recurso. Porque os testes garantem a qualidade do envio.

Um processo de teste passo a passo

Quando houver alinhamento entre as diferentes equipes envolvidas no desenvolvimento do produto, você poderá formalizar ainda mais a existência e o uso dos testes.

Incluir os testes na "definição de concluído"

Ao adicionar testes como um requisito de recurso, você declara que um recurso não está pronto para ser enviado até que seja testado de forma adequada e automática.

Fazer testes regularmente

Depois de implementados, os testes automatizados podem ser sua proteção em todas as etapas do processo de desenvolvimento. Eles não precisam de intervenção humana e podem ser executados em todas as etapas críticas do pipeline de desenvolvimento. Exemplo:

  • Em cada confirmação.
  • Em cada solicitação de envio.
  • Após cada lançamento completo ou mudança de ambiente.

Se você estiver usando serviços de terceiros no seu ambiente de produção, pode ser necessário executar os testes na produção para garantir que as APIs de terceiros se comportem conforme o esperado.

Definir e coletar métricas

Definir um conjunto de métricas é importante para medir a eficácia dos testes e o impacto dos fluxos de trabalho de teste na sua empresa. Confira alguns exemplos de métricas que você pode usar:

  • Lançamentos por mês: um número maior de lançamentos por mês pode indicar um processo de desenvolvimento mais ágil. Os testes automatizados desempenham um papel importante ao garantir que os lançamentos possam ser feitos com confiança.
  • Relatórios de bugs: uma tendência de diminuição nos relatórios de bugs pode ser um sinal positivo de que seus testes (e processos de desenvolvimento) são eficazes.
  • Cobertura de teste: embora nunca seja uma métrica exata, a cobertura pode ser um bom indicador de quão profundamente você está testando casos de uso críticos.

Essas métricas também são influenciadas por outros fatores que podem distorcê-las. Por exemplo, a contagem de lançamentos pode diminuir em uma época de festas, enquanto os relatórios de bugs aumentam. Portanto, não confie apenas em alguns e faça o mapeamento cruzado com outros dados disponíveis para sua equipe.


Quando você implementar essas etapas com sua equipe, a integridade do produto vai se beneficiar a longo prazo. Mas ainda há mais o que fazer.

Práticas recomendadas de teste para administradores de sistemas

As equipes de produto não podem trabalhar sozinhas. Eles dependem do hardware, das ferramentas e da infraestrutura mantidos pelos administradores do sistema. Embora os administradores de sistema geralmente não contribuam diretamente para o desenvolvimento do produto, eles ainda podem influenciar o fluxo de trabalho de desenvolvimento para melhor. Por exemplo, gerenciando ativamente a versão do navegador que determinados grupos de usuários da empresa usam.

Esta segunda parte do artigo explica como isso funciona usando os canais do Chrome e as políticas corporativas.

Canais de lançamento do Chrome

Por padrão, o Chrome é atualizado automaticamente para garantir que todos os usuários estejam executando a versão mais recente, estável e segura do Chrome, incluindo todos os recursos mais recentes, a versão do Chrome lançada no canal estável.

Como uma empresa que desenvolve um produto baseado na Web, talvez você queira usar um navegador antes do canal estável para dar tempo às equipes de produto de se adaptarem às mudanças na plataforma da Web.

Para esse caso de uso, o Chrome oferece um total de quatro canais de lançamento, destinados a diferentes grupos de usuários.

No caso do Chrome, há diferentes canais de lançamento que podem ser usados para antecipar mudanças futuras no navegador e testar os recursos mais recentes antes que eles sejam lançados para todos:

  • Canal estável: é onde a maioria dos usuários está. O canal estável é atualizado automaticamente quando há uma nova versão do Chrome, o que acontece mensalmente.
  • Canal Beta: essa versão vai se tornar estável em quatro a seis semanas, a você a chance de conferir e testar uma versão estável futura e se preparar para ela.
  • Canal de Desenvolvedor: esse canal recebe uma nova versão do Chrome uma vez por semana e inclui todas as correções mais recentes que serão migradas para a versão Beta. Como o nome do canal sugere, ele está em desenvolvimento e pode falhar inesperadamente, mas também inclui os recursos mais recentes, às vezes muito antes de eles se tornarem estáveis. Isso faz do canal de desenvolvimento uma ótima ferramenta para prototipagem e desenvolvimento de ponta.
  • Canal Canary: o mais experimental, que contém todos os recursos mais recentes, mas sem muitos testes. Pelo menos uma vez por dia.

Para saber mais sobre os canais do Chrome, confira o episódio relevante do Chrome Concepts.

Ícones de produtos do Chrome estável, Beta e Dev, além da descrição.

Como usar canais em uma organização exemplar

A estrutura das equipes de produto varia entre as organizações, porque não existe uma abordagem única para o desenvolvimento de software. Como exemplo, vamos supor uma equipe com as seguintes funções: gerenciamento de produtos, UX e UI, engenharia, operações e suporte.

Para uma organização como essa, você pode pensar na seguinte divisão de canais:

  • Gerenciamento de produto: os PMs geralmente podem estar no canal estável para usar a mesma versão que a maioria dos usuários. Às vezes, eles podem usar o canal Beta ou de desenvolvedor se estiverem trabalhando em um recurso que exige uma API que ainda não foi lançada.
  • Engenharia e UX: partes dessas equipes podem estar no canal dev, para que tenham acesso aos recursos mais recentes, como Transições de visualização, mesmo antes de serem estáveis.
  • Operações: pode estar na versão Beta para prever a quebra que afetará os usuários em seguida.
  • Suporte: pode permanecer no canal estável para garantir que interajam com o produto usando o mesmo navegador que a maioria dos clientes.

Diagrama mostrando o fluxo de canais em toda a equipe de exemplo

Usar políticas corporativas para gerenciar canais

Em vez de dar diretrizes e deixar a decisão sobre qual canal usar, o Chrome também oferece ferramentas corporativas e administrativas para gerenciar ativamente qual canal cada usuário acaba usando. Isso é útil porque aumenta imediatamente a superfície de teste de alguns indivíduos para um conjunto determinístico de usuários, o que ajuda a identificar a falha o mais cedo possível e de maneira rastreável.

Se você quiser usar esse nível de controle, recomendamos a seguinte configuração:

  • Funcionários (usuários do app): para minimizar o risco de interrupção, a maioria dos funcionários precisa estar no canal estável, que foi totalmente testado pela equipe de testes do Chrome. Além disso, uma pequena porcentagem de usuários (de 5% a 10%) pode estar no canal Beta. Esse canal recebe uma prévia de 4 a 6 semanas da versão estável e pode ajudar os administradores a descobrir possíveis problemas com um lançamento, mais tempo para resolver os problemas antes que a versão seja lançada para todos.
  • Departamento de TI: os membros do departamento de TI, incluindo os próprios administradores do sistema, podem usar o canal Beta ou Desenvolvedor para ter uma prévia de quatro a seis ou nove a 12 semanas do que está por vir na versão estável do Chrome.

Um diagrama mostrando a divisão dos canais entre outros funcionários e o departamento de TI

Canais de lançamento de longo prazo

O desenvolvimento do produto pode não ser tão rápido quanto o planejado, e a cadência de lançamento de um mês do Chrome pode ser muito alta. Para esse caso de uso, o Chrome oferece um canal Stable estendido que permite receber atualizações de recursos com menos frequência, mas ainda receber correções de segurança. Ele é atualizado a cada oito semanas.

O diagrama a seguir mostra como diferentes marcos são realizados nos diferentes canais de lançamento do Chrome:

Um diagrama de fluxo mostrando a sobreposição de versões estáveis e estendidas

  • As versões estável e estável estendida enviam as mesmas versões nas primeiras quatro semanas, após as quais elas divergem.
  • Não há um canal Beta estendido. Em vez disso, o ciclo Beta padrão de quatro semanas é usado para estabilizar o canal estável e o canal Beta estendido. As empresas que escolherem participar do período de estabilidade estendido de oito semanas precisam continuar executando o canal Beta como fazem hoje para identificar proativamente os problemas que podem afetar os ambientes.

Conclusão

O teste é uma parte crucial das empresas de desenvolvimento de software para garantir a qualidade dos produtos e também uma etapa importante para administradores de sistemas, para dar aos funcionários de uma organização acesso a softwares de alta qualidade e evitar interrupções nos processos de negócios.

Para ter sucesso na implementação de um fluxo de trabalho de teste na organização, é importante que todos compartilhem a mentalidade comum de que a qualidade e, portanto, o teste é um recurso.

Neste artigo, analisamos diferentes maneiras de integrar as práticas recomendadas de teste à sua organização. Para uma análise detalhada das ferramentas de teste disponíveis, consulte nosso artigo Ferramentas do Chrome para testes automatizados sem atritos.

Para orientações práticas de teste, do início ao fim, confira também nosso curso de aprendizado sobre testes e as práticas recomendadas de automação de testes no web.dev.