Testes exploratórios fazem sentido em terra de Testes automatizados?

Ingrid Carvalho
3 min readJul 15, 2022

--

No mundo da tecnologia, mais precisamente na área de qualidade é muito comum querermos facilitar nosso trabalho e não precisar realizar a mesma ação diversas vezes em um teste, por isso automatizamos algumas funcionalidades para nos poupar tempo e acrescentar valor ao nosso trabalho. Mais já nos perguntamos se ao automatizar ̶q̶u̶a̶s̶e̶ ̶t̶u̶d̶o̶ não estamos deixando algumas funcionalidades e experiências do usuário de lado? Veremos se isso é verídico sabendo um pouco mais sobre testes exploratórios.

O que são testes exploratórios

O teste exploratório é a criação e a execução ao mesmo tempo de um teste. Quando realizamos um teste exploratório, normalmente o testador não possui informações detalhadas sobre o que vai testar e como vai testar se baseando na sua experiência, assim como no conhecimento que ele vai adquirindo sobre o produto durante a execução do teste exploratório.

Além de descobrir erros o teste exploratório também pode servir de base para a criação de outros tipos de testes. Esse tipo de teste ganha importância quando, por exemplo, se deseja reproduzir um bug aleatório não pensado no planejamento inicial ou quando se deseja saber a qualidade inicial de uma determinada aplicação.

Para que usamos esses testes?

  • Muitas vezes o teste automatizado não consegue prever a ação do usuário perante a aplicação, sendo assim o teste exploratório mais vantajoso devido a sua possibilidade de testar vários cenários possíveis de bugs.
  • Podemos usar esse tipo de teste em projetos ágeis por causa de prazos apertados e com o foco em resultados rápidos. Uma vez que os requisitos são entendidos pelo testador, ele pode realizar os testes com base em sua habilidade e intuição.
  • No início e no fim do ciclo de desenvolvimento do software. Quando o código passa por mudanças rápidas, os testes exploratórios podem ser altamente eficazes.
  • A experiência adquirida com o teste exploratório pode ser valiosa na preparação de scripts de teste e na realização de testes adicionais nos estágios posteriores do ciclo de vida de desenvolvimento de software.
  • Os desenvolvedores podem usar essa técnica para realizar testes de unidade, enquanto os testadores podem se familiarizar com o aplicativo usando essa abordagem de teste.

Quais são as vantagens?

  • Úteis quando existe pouca ou nenhuma documentação.
  • Diagnóstico de comportamentos inesperados.
  • Possibilidade de encontrar mais erros do que testes com um caminho bem definido.
  • Geram novas ideias para os testes, também ajuda a incentivar a intuição e a criatividade do testador.

Quais são as desvantagens?

  • A sua eficiência depende da experiência/habilidade do testador.
  • Existe a possibilidade de mais defeitos serem perdidos se o testador tiver menos conhecimento do sistema.
  • Não devem ser levados como principal abordagem de teste.

Testes exploratórios X Testes automatizados

A conclusão dessa história é que não existe disputa entre um ou outro. O que acontece é que cada um tem o seu ponto positivo e negativo mesmo com o mundo automatizando tudo algumas coisas não podem ser substituídas ou esquecidas como a experiência do usuário perante um software, tempo, custo e análise de projeto para saber se algo pode e DEVE realmente ser automatizado e se cobre alguma carência que o usuário final possa ter com a aplicação.

--

--

Ingrid Carvalho

Olá, escrevo aqui sobre aprendizados sobre ser uma testadora de software, se quiser me acompanhar aqui só aproveitar as aventuras que estão por vir.