Princípios do Teste de Software: você conhece e sabe o que significa cada um?

Imagem de capa do post Princípios do Teste de Software: você conhece e sabe o que significa cada um?

Os produtos de software estão cada vez mais complexos e exigentes em relação a qualidade, necessitando que o processo de desenvolvimento conte com uma etapa de teste sólida para garantir a confiabilidade das aplicações. Nesse sentido, a fase de testes visa verificar se o sistema atende às demandas do projeto e possibilitar que correções necessárias sejam feitas.

Seguindo essa linha, teste de software é um processo de avaliação de sistemas que possui foco essencial na detecção de defeitos, sendo estes problemas identificados, registrados, analisados e corrigidos. Com o passar do tempo, alguns princípios desta área surgiram e podem servir para orientar e até mesmo melhorar a realização das atividades de QA com base em algumas premissas. Quer conhecê-los? Continuem lendo.

Princípio 1 - Teste demostra a presença de defeitos

Testes podem revelar a presença de defeitos, mas não são capazes de provar que eles não existem. Isso quer dizer que por mais que sejam realizados todos os testes possíveis, sempre haverá a possibilidade de que algum bug novo seja encontrado, ou seja, teste de software diminui a probabilidade de defeitos permanecerem no software, mas mesmo que nenhum seja encontrado, não é uma prova de inexistência.

Princípio 2 - Teste exaustivo é impossível

Testar todas as condições de um sistema, exceto em situações bastante simples, é inviável. Em outras palavras, isso se deve ao fato de que devido à alta complexidade e grande quantidade de combinações possíveis, na maioria das vezes é praticamente impossível testar todas as funcionalidades existentes em um sistema e suas variações. Desta maneira, o processo de controle da qualidade requer planejamento e atenção, devendo focar os esforços prioritariamente no que é mais crítico.

Princípio 3 - Teste antecipado

O teste deve começar o quantos antes no processo de desenvolvimento, haja vista que quanto mais tarde um defeito for encontrado, mais cara será a sua correção. Basicamente isto significa que o controle da qualidade deve ser realizado durante todo o projeto e nesta circunstância, quanto mais cedo iniciar, melhor. A razão disso é simples, pois é comprovado que é muito mais viável corrigir os problemas nos estágios iniciais de construção, para que não gerem custos desnecessários caso sejam revelados em etapas posteriores como desenvolvimento e produção.

Princípio 4 - Agrupamento (cluster) de defeitos

Uma quantidade pequena de módulos contém a maioria dos defeitos descobertos durante os testes. Reza a lenda que bugs são bastante sociais e adoram andar em grupo. Aqui pode ser aplicado o princípio de Pareto em que 80% dos erros podem ser oriundos de 20% dos módulos da aplicação. Logo, quando tais áreas do sistema são identificadas, pode-se priorizar testes nas mesmas e dar a devida atenção.

Princípio 5 - Paradoxo do pesticida

O uso frequente do mesmo pesticida pode fazer com que certas pragas criem resistência as substâncias da fórmula, tornando cada vez mais difícil eliminá-las. O mesmo episódio pode ocorrer quando um conjunto de testes repetido diversas vezes passa a não encontrar novos defeitos após um determinado período. Por isso, deve ser revisado periodicamente o planejamento do projeto para que casos de teste não se tornem obsoletos perdendo sua eficácia.

Princípio 6 - Teste depende do contexto

Testes devem ser realizados de formas distintas conforme o contexto e modelo de negócio. O controle da qualidade deve assegurar a confiabilidade de todos os produtos entregues aos clientes a partir de técnicas e diversos tipos de testes especializados e aderentes ao cenário de utilização. Assim dizendo, o planejamento e execução dos procedimentos de teste dependem do ambiente em que serão aplicados, além de levar em consideração obviamente os objetivos a serem atingidos.

Princípio 7 - A ilusão da ausência de erros

Mesmo que se encontre "todos" os defeitos do software e ele opere corretamente, mesmo assim pode causar insatisfação se não atender às expectativas e necessidades dos usuários. Por isso, para ser completo e não causar ilusão, o processo de validação necessita além de identificar bugs, garantir que o sistema está em conformidade com sua especificação e que atende as expectativas do cliente.

Ao longo deste texto foram apresentados os princípios do teste de software e o seu significado. Nós aqui na Testing Company já vivenciamos na prática alguns deles em determinados projetos.

E você já vivenciou alguns princípios do teste de software? Deixe seu comentário.

Compartilhar:
0 Comentários

Deixe seu comentário

Fale AGORA com um de nossos consultores

Comentário adicionado com sucesso