Planning For Ad Hoc Testing

Neste artigo, abordamos os testes Ad hoc, seus tipos, suas vantagens, suas desvantagens e as melhores práticas para conduzir testes Ad hoc.

O que são testes Ad Hoc?

Testes Ad Hoc às vezes referidos como ‘testes aleatórios’ ou ‘testes com macacos’, é definido como um tipo de teste informal. O objetivo deste processo é quebrar o sistema usando métodos não-convencionais. Este tipo de teste de software é geralmente não planejado e não segue nenhuma técnica específica de desenho de teste para criar casos de teste.

O objetivo principal do teste ad hoc é encontrar qualquer defeito através de verificação aleatória. O testador improvisa os passos executando-os arbitrariamente. Isto pode revelar defeitos muito específicos e interessantes, que são facilmente perdidos quando se usam outros métodos.

O aspecto mais surpreendente dos testes ad hoc é que eles não incluem nenhuma técnica de desenho de teste. Isto significa que embora este método encontre defeitos que normalmente não são encontrados, é mais difícil de reproduzir, pois não há casos de testes escritos ou documentação.

O sucesso dos testes ad hoc se deve realmente à criatividade e persistência do testador e às vezes é apenas devido à pura sorte. A técnica de testes ad hoc se enquadra diretamente na categoria ‘testes não estruturados’.

Structured Vs. Unstructured Testing

Structured Testing

Esta abordagem garante que todas as atividades que ocorrem durante o procedimento de teste sejam roteirizadas, desde a criação de casos de teste até a execução sequencial. O testador seguirá o script para conduzir os testes com sucesso.

Testes não-estruturados

Esta abordagem envolve testes através de adivinhação de erros. O testador irá criar casos de teste durante o processo de teste.

Tipos de Teste Ad Hoc Método

Testes de Buddy

Este tipo de teste ad hoc é conduzido com um mínimo de duas pessoas. Ocorre após o teste unitário de um módulo ter sido conduzido e concluído. Este tipo de teste também pode ser considerado uma combinação de teste de sistema e de unidade.

O objetivo principal é que dois ‘amigos’ trabalhem na identificação de defeitos ou bugs no mesmo módulo ao mesmo tempo. Esta equipe consistirá geralmente em um desenvolvedor de software e um testador de software.

Os dois ‘buddies’ trabalham juntos nesse módulo para criar casos de teste válidos. Este processo garante que o testador não reportará nenhum erro que casos de teste inválidos possam ter gerado.

Testes de bugdy provaram ser bem sucedidos, pois ajuda o testador a desenvolver melhores casos de teste e permite que a equipe de desenvolvimento faça alterações de projeto o mais cedo possível.

Testes de macaco

Devido à natureza aleatória dos testes, este método ganhou o nome de ‘teste de macaco’. O teste de macacos é mais comumente feito no nível de teste de unidades. Aqui, os testadores testam aleatoriamente a aplicação ou produto sem casos de teste. O objetivo principal do testador é analisar os dados ou testes de forma completamente aleatória, garantindo que o sistema seja capaz de suportar qualquer falha.

Testers fornecem o software com entradas aleatórias e observam suas saídas correspondentes. Com base nos dados de saída, eles podem determinar melhor quaisquer erros, inconsistências ou falhas do sistema.

Testes de Paridade

Similar ao ‘teste de amigo’ de algumas maneiras, o ‘teste de par’ envolve um par de testadores trabalhando juntos nos módulos para testes. Os dois testadores irão compartilhar idéias, conhecimento e opiniões sobre a mesma máquina para identificar defeitos ou erros.

Este método de teste envolve o uso de testadores que são emparelhados de acordo com seus conhecimentos e níveis de conhecimento, permitindo diferentes percepções para qualquer problema que eles identifiquem. Os dois testadores irão compartilhar a mesma configuração, também compartilhando o trabalho de teste e documentando todas as observações entre eles. Este método de teste também permite que um testador execute os testes, enquanto o outro pode tomar notas sobre os resultados.

Ler também: Usar teste de par para melhor aceitação

Buddy vs. teste de par

A principal diferença entre teste de par e teste de par é que o teste de par é uma combinação de teste de unidade e teste de sistema. Outra diferença chave é que o teste de buddy é executado por desenvolvedores e testadores juntos. O teste de pares, no entanto, é feito apenas por testadores que têm diferentes níveis de conhecimento.

Quando e quando não deve conduzir testes ad hoc

Testes ad hoc são normalmente conduzidos quando há falta de tempo para realizar processos de teste mais longos e exaustivos. O método de teste mais completo inclui a preparação de documentos de requisitos de teste, casos de teste e projetos de casos de teste.

O tempo ideal para conduzir testes ad hoc é após a conclusão de todas as técnicas de teste formais. Entretanto, testes ad hoc também podem ser conduzidos no meio do desenvolvimento do software, após o desenvolvimento completo do software, ou após alguns módulos já terem sido desenvolvidos.

É importante tomar nota dos poucos cenários em que os testes ad hoc não são recomendados. Algumas condições quando testes ad hoc não devem ser realizados incluem:

Quando testes Beta estão sendo realizados

Em casos de testes que já têm erros existentes

Vantagens dos testes ad hoc

Uma das principais vantagens dos testes ad hoc é que ele é capaz de identificar quaisquer erros que normalmente passariam despercebidos durante os métodos de testes formais. Isto pode poupar muito tempo, pois não requer nenhum dos planejamentos que os testes estruturados fazem.

Outra vantagem é que os testadores podem explorar a aplicação livremente, de acordo com seu próprio conhecimento e compreensão da aplicação. Eles podem então executar vários testes à medida que vão avançando, ajudando a identificar erros ao longo do processo.

Em terceiro lugar, os testadores e desenvolvedores da aplicação podem facilmente testar a aplicação eles mesmos, já que não requer casos de teste. Isto permite que os desenvolvedores criem códigos mais eficientes e livres de erros facilmente.

Testes ad hoc também podem ser combinados com outras técnicas de teste e executados posteriormente para produzir resultados mais eficazes e informativos em geral.

Desvantagens dos testes ad hoc

Uma das principais desvantagens dos testes ad hoc é que o processo de teste real não é documentado, uma vez que não segue um caso de teste em particular. Isto torna mais difícil para os testes a regeneração de um erro. Porque, para obter esse erro, o testador precisará lembrar os passos exatos que tomou para chegar lá, o que nem sempre é possível.

Ocasionalmente, como resultado de casos de teste inválidos que são desenvolvidos pelo testador, erros inválidos são relatados. Isto pode se tornar um problema nos seguintes processos de correção de erros. Se o testador não tiver conhecimento prévio sobre a funcionalidade da aplicação em teste, testes ad hoc não serão úteis e não serão capazes de identificar quaisquer erros.

Testes ad hoc também não garantem que todos os erros serão encontrados. O sucesso dos testes ad hoc depende da habilidade e do conhecimento do testador. Como não existem casos de testes previamente criados ou documentados, a quantidade de tempo, esforço e recursos que vão para estes testes permanece não especificada. Encontrar um erro pode levar de alguns minutos a algumas horas ou mais.

Best Practices When Conducting The Testing

Testes que não são conduzidos da maneira correta podem causar desperdício de tempo desnecessário. Com isto em mente, é crucial saber como otimizar o processo a fim de realizar testes ad hoc com sucesso.

As seguintes melhores práticas garantirão que o tempo gasto no processo seja gasto sabiamente com a melhor chance de obter os resultados desejados.

Ficar familiarizado com o software

É imperativo que o testador que realiza os testes ad hoc tenha um conhecimento sólido e mantenha a aplicação. É importante que o testador esteja familiarizado com todas as principais características da aplicação para garantir uma melhor ‘adivinhação de erros’. Com o conhecimento correto, o testador será capaz de encontrar mais bugs, erros e inconsistências gerais.

Identificar áreas com probabilidade de erros

Se os testadores não estiverem familiarizados com a aplicação, então é recomendável que eles identifiquem as áreas propensas a erros das aplicações e comecem a partir daí. Selecionar áreas sensíveis para realizar testes ad hoc permitirá aos testadores encontrar erros com mais facilidade.

Prioritizar Áreas Os Acessos do Usuário Final Mais Prontamente

Comece testando as áreas da aplicação que são mais utilizadas pelos clientes e usuários finais. Ao fazer isso, eles irão avaliar as características importantes primeiro, o que lhes permite relatar quaisquer erros de antemão.

Poisamente Formular o Plano de Testes

Embora os testes ad hoc não exijam qualquer planejamento ou documentação prévia, é útil fazer algum planejamento aproximado de antemão. Tomar nota das principais áreas que requerem testes ajudará o testador a cobrir o máximo possível no menor tempo possível.

Increase Efficiency With The Right Tools

É crucial usar as ferramentas certas, tais como monitores de tarefas, depuradores e perfiladores, para garantir que o processo funcione eficientemente. Elas complementam a capacidade dos testadores de isolar erros, pois pode haver casos em que exceções não são identificadas durante o teste.

Conclusão

Testes ad hoc não requerem planejamento elaborado, documentação e projetos de casos de teste. Ao invés disso, ele economiza tempo devido à sua natureza ad hoc, e ao selecionar testadores que são criativos e têm conhecimento prévio da funcionalidade do aplicativo. Este teste pode ajudar a encontrar mais defeitos do que os testes planejados.

Junte 60.000+ Assinantes

Para blogs mais recentes, atualizações do setor e dicas exclusivas.

*O seu e-mail está seguro conosco, nós também odiamos spam

Leave a Reply