Twitter

Arquivos mensais

Categorias

Curiosidades sobre testes de software

Teste do macaco!Algo que todos os envolvidos na atividade de desenvolvimento de software têm certa noção prática, mas que merece ser comentado por ser curioso:

De acordo com Roger S. Pressman1, o teste de software pode tão somente mostrar a existência de bugs, mas nunca pode garantir que eles não existem. Mais grave que isso: “Um bom caso de teste é aquele que tem uma elevada probabilidade de revelar um erro ainda não descoberto” e “Um teste bem-sucedido é aquele que revela um erro ainda não descoberto”. Os objetivos dos testes na realidade devem ser bem contrários ao “ponto de vista comumente defendido em que um teste bem-sucedido é aquele em que nenhum erro é encontrado”.

Eis um parágrafo bastante elucidativo do mesmo autor:

À medida que os resultados de teste são reunidos e avaliados, uma indicação qualitativa da qualidade e da confiabilidade do software começa a vir à tona. Se erros graves, que exijam modificação de projeto, forem encontrados com regularidade, a qualidade e a confiabilidade do software são suspeitas, e testes adicionais são indicados. Se, por outro lado, as funções do software parecerem estar funcionando adequadamente e os erros encontrados forem facilmente corrigíveis, pode-se tirar uma entre duas conclusões: (1) a qualidade e a confiabilidade do software são inaceitáveis; ou (2) os testes são inadequados para revelar erros graves! Finalmente, se a atividade de teste não descobrir nenhum erro, não há dúvida de que a configuração de teste não foi suficientemente elaborada e que erros estão escondidos no software. Esses defeitos serão por fim descobertos pelos usuários e corrigidos pelo desenvolvedor durante a fase de manutenção (quando o custo por correção pode ser de 60 a 100 vezes o custo por correção durante a fase de desenvolvimento).

O mais curioso de tudo é que Pressman não chega a esse ponto mas, se os testes devem encontrar erros, podemos deduzir que os bugs são inerentes ao software. Então, enquanto alguns desenvolvedores sentem-se frustrados ao ter que fazer testes e principalmente ao constatar erros, devemos sempre considerar a atividade de teste como algo construtivo. Afinal, embora não prove que o software seja desprovido de erros, a condução de testes auxilia muito para indicar a qualidade do software como um todo, se cumpre as especificações e requisitos de desempenho e confiabilidade.

1 PRESSMAN, Roger S. Engenharia de software. Trad. José Carlos Barbosa dos Santos. São Paulo: Pearson Makron Books, 1995. p. 786-790.

Post scriptum (10 mai. 2008)

Eis um engraçado post sobre o assunto, de Nerdson não vai à escola: “Testem, macacos, testem!”


2 comments to Curiosidades sobre testes de software

  • Utilizando WordPress WordPress 2.3.2

    [...] Prof. Aline, convido os colegas a darem uma olhada em algo que escrevi em meados do ano passado: Curiosidades sobre testes de software. Envie um [...]

  • Utilizando WordPress WordPress 2.5.1

    [...] E, a propósito de algo que foi comentado pela Prof. Aline, convido os colegas a darem uma olhada em algo que escrevi em meados do ano passado: Curiosidades sobre testes de software. [...]

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>