logo
EN
HomeConteúdosInsightsTecnologia

6 min para ler


CESAR .


2022-12-05T00:00:00

Tecnologia


Como o Code Bootcamp otimizou a automação de testes no CESAR?

Por Brunna Arruda, QA engineer e Renan Oliveira, Software Test Engineer do CESAR.

O Code Bootcamp é um evento similar a uma maratona de codificação, iniciativa que consiste em focar, exclusivamente, em atividades de automação ao longo de um dia, especialmente no desenvolvimento de novos casos de teste automáticos, exigindo uma preparação e objetivos bem definidos, e transformando a realidade de automação de um projeto em pouco tempo e com esforço conjunto.

Como surgiu?

Um dos grandes desafios de uma das equipes de teste do CESAR era dispor de tempo para atividades de automação, uma vez que o time era responsável por todas as atividades do processo de testes, incluindo as execuções manuais que tomavam a maior parte do tempo.

A partir de diferentes dores levantadas pelo time, em 2019 surgiu a ideia de separar pelo menos um dia totalmente dedicado para automação, com a ciência da empresa e do cliente.

Considerando o grande escopo de atividades e responsabilidades do time, a automação não costumava ser uma prioridade. No entanto, era um desejo de todos ter mais prática e vir a realizar a maioria dos casos de teste manuais com automação, para reduzir o esforço gasto e ter sempre o feedback do status da saúde das funcionalidades.

Logo nas primeiras sessões de teste foi possível notar ganhos: todos do time se tornaram ainda mais focados, com objetivos em comum, trabalhando juntos em um ambiente diferente, com um processo mais dinâmico, com metas bem planejadas e com uma maior motivação.

Assim, foi possível conquistar o resultado pretendido: o número de casos de teste automatizados em apenas um dia tornou- se maior do que o realizado em alguns meses.

Qual é o objetivo principal?

Inicialmente, o objetivo do programa foi focar em casos de teste, ou seja, na criação de scripts automáticos para cobrir as centenas de testes manuais existentes.  Com o passar do tempo, outros tipos e atividades de automação foram sendo integradas ao Code Bootcamp, como, por exemplo, o desenvolvimento de ferramentas ou refatoração dos scripts já existentes.

Além disso, devido aos benefícios proporcionados ao time, a atividade passou a ser realizada quinzenalmente, sempre que possível, com todos os membros do time participando de todas as atividades relacionadas ao bootcamp.

Dessa forma, a iniciativa passou a interessar membros de outros projetos que viram no Code Bootcamp uma oportunidade de progredir nas atividades de codificação, trazendo ainda mais insights sobre o que poderia ser realizado durante o evento.

Quais são as atividades realizadas no bootcamp?

1. Configuração do ambiente: Instalar as ferramentas necessárias para possibilitar a realização e execução dos testes automáticos, como IDEs, plugins e bibliotecas;

2. Automação de novos testes:  Criação de scripts para executar casos de teste de forma automática, reduzindo procedimentos que são executados manualmente e diminuindo o envolvimento humano em tarefas repetitivas.

3. Refatoração de códigos antigos que não funcionam mais: Geralmente, em razão das atualizações que acabaram ocorrendo nos dispositivos, seja uma alteração de UI, mudanças de requisitos do software, entre outros.

4. Implementação de melhorias: Atividades de otimização dos scripts do framework de testes e dos próprios casos de teste, de forma a aprimorar a performance, legibilidade e integrar padrões e bibliotecas;

5. Desenvolvimento de soluções/ferramentas: Automação de tarefas realizadas pelo time, que antes eram feitas manualmente, como também implementação de ferramentas de suporte às atividades e processos;

6. Treinamentos: Cursos e suportes realizados pelas pessoas do time no intuito de ganhar conhecimentos.

Benefícios para clientes

Um dos grandes dilemas encontrados durante a execução dos primeiros Code Bootcamps, era identificar qual seria a percepção do cliente sobre a dedicação total do time em automação durante o bootcamp. Porém, os resultados que a automação traz ao projeto, quando bem empregada, já são fatores que beneficiam e justificam todo o esforço.

São eles:

  • Uma maior cobertura automática;
  • Redução no esforço manual;
  • Feedback rápido sobre a saúde das funcionalidades;
  • Execuções mais frequentes;
  • Confiança na equipe em relação ao comportamento das aplicações;
  • Capacitação do time e resultados rápidos.

No final dos primeiros bootcamps, o cliente ficou muito satisfeito e apoiou cada vez mais essa iniciativa, já confiando no planejamento e realização do evento na periodicidade definida pelo grupo.

automação de testes
Fonte: o autor

Uma experiência dinâmica e eficaz

A maratona costuma ocorrer fora do ambiente de trabalho cotidiano como, por exemplo, em um auditório ou sala de reuniões na estrutura da empresa e pode conter, dentro das tarefas definidas, momentos de integração do time, jogos, lanches, músicas e diversos outros tipos de atividades de descontração.

A ideia é que o dia direcionado ao Code Bootcamp seja um dia de trabalho diferenciado para toda a equipe, dessa forma, surgiu a proposta de dinamizar as atividades com momentos de descontração.

Nas edições presenciais, o programa contou com lanches coletivos e variados, disponibilizados durante todo o dia para o time, jogos de videogame e até mesmo um karaokê para que os membros pudessem ter um momento de relaxamento e distração.

Nas edições remotas, esses momentos precisaram de uma adaptação e, cada membro ficou responsável por providenciar seu lanche e jogos online foram inseridos na programação do Code Bootcamp.

Trabalho em equipe com estratégia em busca da eficiência

Para o time, um dos grandes resultados do Code Bootcamp foi a oportunidade de ter um momento de dedicação exclusiva para automação em um projeto que tem diversas outras atividades no escopo, permitindo um momento mais eficiente de foco e produtividade.

Assim, em vez de ter um esforço distribuído e muitas vezes assíncrono, todos do time estão trabalhando em conjunto com metas bem definidas e oferecendo um suporte mútuo, sendo também de extrema importância para a integração das pessoas na equipe.

Com estes resultados, foi possível inserir o Code Bootcamp no planejamento de atividades oficiais do time, aumentando a frequência de realização do evento e proporcionando uma curva crescente do número de testes automatizados que foi aumentando em paralelo com o conhecimento adquirido pelo time a cada realização do evento.

Além disso, o processo e os resultados obtidos pelo Code Bootcamp serviram de inspiração para outros institutos de tecnologia e para o cliente, que replicaram o processo em suas realidades e realizaram edições desse evento com seus times para focar na automação de testes. De maneira geral, contribui para a evolução de toda a equipe e pôde servir de referência para outros times dentro da organização.


teste de software