7 princípios-chave de teste ISTQB | #3 Primeiros passos no teste de software
Publicados: 2022-05-31A realização de testes de software precisos e corretos segue vários princípios. O International Software Testing Qualifications Board distingue sete fundamentais, que vamos discutir hoje. Curioso para descobrir? Leia um artigo sobre os principais princípios de teste do ISTQB!
Princípios de teste ISTQB - índice:
- O teste revela defeitos, mas não pode provar sua ausência
- Testes completos são impossíveis
- Testes antecipados economizam tempo e dinheiro
- Efeito de bola de neve de mau funcionamento
- Paradoxo dos pesticidas
- Depende do contexto
- Anunciar software sem falhas é impossível
- Resumo
O teste revela defeitos, mas não pode provar sua ausência
O teste aumenta a probabilidade de encontrar erros, o que, por sua vez, facilita as chances de corrigi-los. No entanto, não pode garantir totalmente que o software esteja livre de todos os defeitos, mesmo que a grande maioria seja detectada e corrigida. Devido à incapacidade de criar softwares sem falhas, muitos consideram o processo como negativo por design, pois você nunca obterá um resultado positivo e sempre encontrará alguma “sujeira” nos programas.
Testes completos são impossíveis
A regra acima afirma que detectar todos os defeitos de software é inútil. No entanto, isso não se aplica a programas curtos simples. Isso, por sua vez, indica que há uma chance de ver todas as combinações de entradas e pré-condições para testar alguns programas completamente. Ao avaliar softwares sofisticados, mesmo a melhor IA não pode executar todas as medições necessárias, muito menos testadores manuais. Os avaliadores automatizados executarão os aplicativos com mais eficiência e precisão, mas ainda não podem garantir um desempenho impecável. Para fazer isso, você precisa embarcar em tarefas adicionais, como priorização, análise de risco, além de encontrar e executar outras técnicas de teste.
Testes antecipados economizam tempo e dinheiro
Muitos profissionais também chamam esse princípio de “deslocamento à esquerda”. Quanto mais cedo você detectar defeitos, mais fácil será corrigi-los, portanto, os testes estáticos e dinâmicos devem começar o mais rápido possível. Em poucas palavras:
- Teste estático – avaliando o produto sem executar o código.
- Teste dinâmico – avaliação do código de um módulo ou sistema durante sua execução
A detecção de defeitos nas primeiras fases de implementação facilita o diagnóstico adicional. Mas quando duas áreas de software interagem, a correção de defeitos torna-se problemática devido à incapacidade de identificar aquela que apresenta o erro. Nesses casos, é preciso tempo, esforço e mão de obra extras para resolver. Em suma, é a resposta rápida aos obstáculos que podem impedir que as rachaduras se multipliquem
Efeito de bola de neve de mau funcionamento
A maioria das falhas tende a se agrupar nos módulos mais críticos, de modo que seu exame aprofundado revela e elimina suficientemente a maioria. Esses grupos passam a ser o foco principal da execução da análise de risco para mapear e estabelecer a conduta futura das ações. A maioria das falhas aparece depois de seguir os caminhos que os usuários seguem, mas nesses casos, o conhecimento por si só não torna os módulos impecáveis.
O princípio de Pareto, diz que 80% dos resultados se originam de apenas 20% das causas. Em outras palavras, 80% dos bugs existem em 20% dos módulos. Se você encontrar vários defeitos em um módulo, continue cavando, pois eles estarão lá.
Paradoxo dos pesticidas
Executar os mesmos testes repetidamente pode falhar porque eles podem ter sido projetados incorretamente em primeiro lugar e nunca serão eficazes. Você precisa corrigir e atualizar os testes para aumentar a chance de encontrar novas falhas no software.
Criar um sistema de diagnóstico completamente novo também não resolverá o problema. Seguir as combinações anteriores pode interromper o processo de avaliação no mesmo nível. Este princípio é denominado 'paradoxo dos pesticidas' porque os pesticidas que controlam as pragas também perdem eficácia após uma determinada quantidade de uso.
Depende do contexto
A forma de execução dos testes depende dos sujeitos examinados. Assim, testar um programa de contabilidade, um videogame ou um aplicativo de rede social varia substancialmente. Também depende da situação, por exemplo, uma análise com foco na praticidade de um aplicativo como verificar sua atratividade para os usuários, facilidade de uso, camada visual etc. também difere daquelas avaliações voltadas para atributos funcionais do programa, por exemplo, desempenho cálculos corretos.
Anunciar software sem falhas é impossível
A aplicação de vários tipos de ferramentas de diagnóstico não pode garantir aplicativos pontuais. Muitos que afirmam e anunciam seus aplicativos como tal estão errados, mas provavelmente é apenas pelos esforços de marketing que fazem a afirmação. Você pode executar vários testes manuais e automatizados para aumentar a probabilidade de descobrir e corrigir o maior número possível de erros, mas ainda assim, não há garantia de desempenho perfeito. Em alguns casos, os obstáculos dizem respeito ao software operacional, por exemplo, o programa pode não atender a todas as expectativas do usuário.
Princípios de teste ISTQB - resumo
É assim que o ISTQB, em um nível básico, apresenta sete princípios de teste do ISTQB que um testador de software deve seguir. Em primeiro lugar, eles indicam a inviabilidade do diagnóstico completo do software, por isso é fundamental, entre outras coisas, modificar os testes, bem como realizar uma busca minuciosa nos principais módulos. Essas ações potencializam a busca e eliminação da maioria dos defeitos diminuindo a probabilidade de falhas no futuro.
O que é teste de software? Agora você sabe a resposta! Confira nossa outra série sobre Python e Javascript!
Se você gosta do nosso conteúdo, junte-se à nossa comunidade de abelhas ocupadas no Facebook, Twitter, LinkedIn, Instagram, YouTube, Pinterest.
Primeiros passos no teste de software:
- O que é teste de software?
- 1 grande verdade sobre erros de software
- Sete princípios-chave de teste ISTQB
- 6 fases de STLC
- Teste versus depuração
- Verificação e validação no processo de teste de software