Edultra 13 Denunciar post Postado Setembro 25, 2008 Recebi por e-mail o conteúdo abaixo e achei interessante estar postando aqui: No final do mês de agosto fui convidado a ministrar um tutorial sobre teste de software. Antes iniciar efetivamente o bate papo com a equipe de desenvolvimento, convidei todos os presentes a sair do auditório e retornar para o ambiente de produção. Solicitei a cada um dos participantes o desenvolvimento de uma interface para receber, via teclado, os dados de uma pessoa, por exemplo: código, nome, rua, número, bairro, idade e CPF. Além de receber as informações o programa deveria armazená-las em um banco de dados. Enfatizei, TESTEM O PRODUTO ANTES DE ENTREGAR PARA O CLIENTE. Terminado as atividades de programação e do “suposto teste”, todos me garantiram que os programas estavam corretos. Então solicitei que fossem testados os seguintes casos: 1 - Entre com zero para código. 2 - Entre com um número negativo para o código. 3 - Digite branco para o nome. 4 - Digite zero para idade. 5 - Digite um número negativo para idade. 6 - Digite a letra A para idade. 7 - Digite um CPF inválido. É perceptível que de acordo com os casos solicitados, as validações dos campos deveriam ser efetuadas. Foi justamente isto que NÃO aconteceu. Veja só os resultados quantitativos da experiência: 9 programadores. 9 programas sendo desenvolvido. 7 casos de testes solicitados, totalizando assim 63 testes efetuados. Percentual de erros encontrados detectados: 74% (47 erros). Média de erros por programadores neste programa: 5,22. Lembre-se que o programa era apenas para armazenar os dados de uma pessoa em uma tabela (poderia ser pior). No início de setembro desenvolvi a mesma experiência com os alunos recém matriculados na disciplina de Sistemas e Tecnologias da Informação III da Faculdade de Tecnologia de Ourinhos (alunos do sexto semestre do curso). Infelizmente, neste ambiente o percentual de erros detectado foi de 97%. A partir deste dado iniciei uma discussão sobre teste de software. Ao analisar os números é perceptível que tanto os alunos, como os profissionais participantes da experiência, procuram testar somente os casos que possuem grande possibilidade de acerto. A maioria deles digitam 1 para o código, Pedro Álvares Cabral para o nome, 25 para a idade e assim por diante. Após digitar alguns registros todos julgam que o programa está testado. A atividade de teste, assim como todas as outras, é de extrema importância para a qualidade do nosso software. É uma atividade que deve ser explorada, formalmente, desde as disciplinas introdutórias dos cursos de computação. É somente com a definição e o aculturamento dos conceitos de processo de produção por parte do mercado e, principalmente, dos alunos chegaremos a algum lugar no contexto produtivo para software. Lembrando: o teste faz parte do processo. Por fim, convido você a realizar esta experiência em sua empresa ou com seus alunos. Será que nós sabemos testar um software? José Augusto Fabri Acesse o blog do autor e comente: http://engenhariasoftware.wordpress.com/ Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Setembro 26, 2008 Excelente Realmente os testes fazem parte de uma das mais importantes fases do projeto e por isso os grandes projetos tem equipes so para eles, pois ainda nao estao viciados nos testes da equipe de producao Compartilhar este post Link para o post Compartilhar em outros sites
Laurentino Mello 1 Denunciar post Postado Setembro 28, 2008 Ótimo conteúdo. Parabéns!!! Compartilhar este post Link para o post Compartilhar em outros sites
Prog 183 Denunciar post Postado Setembro 28, 2008 Há apenas um problema neste texto... Quem testa o software nunca deve ser a mesma pessoa, ou equipe, que desenvolveu o software. Isto é básico. Compartilhar este post Link para o post Compartilhar em outros sites
Mário Monteiro 179 Denunciar post Postado Setembro 29, 2008 Foi exatamnete o que disse prog em projetos decentes isso deve ocorrer Compartilhar este post Link para o post Compartilhar em outros sites
Edultra 13 Denunciar post Postado Setembro 30, 2008 Há apenas um problema neste texto... Quem testa o software nunca deve ser a mesma pessoa, ou equipe, que desenvolveu o software. Isto é básico. Também acho, deve haver um terceiro responsável por isso, geralmente é um analista ou um testador, porem o pessoal deveria ja sair com a idéia de testar algo antes de apresentar... Compartilhar este post Link para o post Compartilhar em outros sites