Como aplicar testes exploratórios no Ágil?

A flexibilidade e liberdade dos testes ágeis podem agregar grande valor às metodologias ágeis – mas sua incorporação nos sprints deve ser feita com certa cautela.

 

A compatibilidade entre testes exploratórios e metodologias ágeis não é especialmente óbvia, o que leva muitas pessoas a acreditar que ela não existe. “Esse tipo de teste não tem documentação, e nem dá pra medir direito o progresso, por isso não combina com o Ágil”, dizem. Será que é verdade?

Não, não é. E ao longo deste artigo você vai entender por que os testes exploratórios merecem, sim, espaço nos seus sprints ágeis.

Explorar é preciso

Os testes exploratórios são aqueles em que o aprendizado sobre o sistema acontece em conjunto com o design e a execução dos testes.

Diferentemente dos testes convencionais, eles não seguem roteiros detalhados, sendo mais guiados pela intuição e experiência dos testadores do que por um conjunto fechado de casos de teste.

Essa abordagem dá maior liberdade aos profissionais de testes, que podem mudar o foco da investigação de acordo com os resultados que encontram. Também podem se adaptar rapidamente a mudanças nos requisitos ou em funcionalidades do sistema – algo que não é tão fácil de se fazer em uma abordagem “fechada” como a dos testes estruturados.

Outro benefício dos testes exploratórios que merece destaque é a possibilidade de identificar problemas com maior antecedência, já que os testadores não precisam esperar até o final de um ciclo formal de testes para entrar em ação.

Aqui, cabe ressaltar que os testes exploratórios não substituem os roteirizados: eles os complementam.

Para ter a melhor cobertura possível, é preciso usar também uma abordagem mais estruturada e planejada, que compense os possíveis erros dos testes exploratórios (como gasto excessivo de tempo, foco em aspectos pouco relevantes ao usuário e documentação insuficiente).

Dito isso, fica a pergunta: onde entra o Ágil nessa história?

A exploração ágil

Existem várias semelhanças e compatibilidades entre os testes exploratórios e as metodologias ágeis. Seus fundamentos, inclusive, têm ressonância com o Manifesto Ágil:

  • Indivíduos e interações estão acima de processos e ferramentas;
  • Software em funcionamento está acima de documentação detalhada;
  • Colaboração com o cliente está acima de negociação de contrato;
  • Responder a mudanças está acima de seguir um plano.

A natureza flexível e adaptável dos testes exploratórios faz deles instrumentos valiosos em uma abordagem ágil. Vale destacar:

  • Iteração contínua: Os testes exploratórios podem ser feitos a cada sprint, à medida que novas funcionalidades são implementadas, ou conforme ocorram mudanças de prioridades;
  • Feedback rápido: Quanto mais cedo o software for avaliado, mais rápido os bugs podem ser detectados, reportados e corrigidos. Essa rapidez está alinhada com os valores das metodologias ágeis;
  • Colaboração entre equipes: Com uma comunicação aberta e o devido alinhamento, os testes exploratórios podem se tornar uma atividade colaborativa, em que os testadores contam com o apoio de outros membros da equipe;
  • Base em critérios de aceitação: Os testes exploratórios podem ser executados com base nos critérios de aceitação acordados para cada história de usuário, colocando como prioridade a entrega de valor ao cliente.

Essa incorporação, contudo, não pode ser feita de maneira descuidada, pois há riscos e desafios envolvidos:

  • Falta de documentação: Dependendo da maneira como é feita, a documentação dos testes exploratórios pode ser considerada insuficiente até mesmo por equipes ágeis, em que a rastreabilidade dos resultados é prioritária. Assim, é importante encontrar um ponto de equilíbrio nessa questão;
  • Foco excessivo em atividades ad hoc: Se a natureza flexível dos testes exploratórios não for mantida sob controle, pode levar a uma falta de consistência e a cobertura inadequada, agregando menos valor ao trabalho;
  • Conflito com outras atividades do sprint: Em algumas equipes ágeis, os testes exploratórios podem acabar competindo com outras atividades dentro do sprint, como o desenvolvimento de novas funcionalidades ou a correção de defeitos. Mais uma vez, o equilíbrio entre as atividades é crucial.

É importante, também, que os testadores tenham habilidade e experiência suficientes para extrair o potencial dos testes exploratórios. Isso inclui não apenas a execução propriamente dita, mas também a compatibilização com o resto da equipe e suas atividades.

Extra: A Abordagem do Estatuto

É um engano comum acreditar que testes exploratórios dispensam qualquer documentação. Registrar as atividades, ainda que de maneira menos detalhada do que nos testes convencionais, é necessário.

Mas como não exagerar nos registros?

Você pode usar a Abordagem do Estatuto (ou “charter”, na expressão original) e orientar o registro apenas de pontos cruciais:

  • Os objetivos dos testes;
  • As táticas a serem usadas;
  • A duração das sessões;
  • A lista de bugs encontrados;
  • As funcionalidades testadas.

O relatório orientado pelo estatuto, somado às anotações feitas individualmente por cada testador, deve gerar uma documentação ao mesmo tempo sucinta e eficiente para se aproveitar os resultados dos testes exploratórios.

 

Eleve a um novo patamar o nível da execução de testes de software na sua organização: clique aqui e agende uma conversa com um especialista Prime Control.

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.