sábado, 29 de setembro de 2007

Introdução: Testes de Software

O interesse pela atividade de testes de software aumenta à medida que a falta destes de testes influenciam diretamente no custo final de um software produzido. Com isso, as exigências por softwares com maior qualidade têm motivado a definição de métodos e técnicas para o desenvolvimento de softwares que atinjam os padrões de qualidade impostos. Vários pesquisadores têm investigado os diferentes critérios de teste, buscando obter uma estratégia de teste com baixo custo de aplicação, mas ao mesmo tempo, com grande capacidade em revelar erros.

Os testes podem ser automáticos ou manuais, e eles podem ser classificados em diversos tipos: teste de caixa-preta (black-box testing), teste de caixa-branca (white-box testing), testes de unidade (Unit Testing), testes de aceitação (Aceptance Testing), testes de integridade, testes de desempenho, testes funcionais, testes de interface, testes estruturais etc.

Para os testes manuais, existem muitas técnicas e padrões que devem ser seguidas para garantir uma melhor qualidade dos testes, e para os testes automáticos, existem várias ferramentas que auxiliam na automatização dos testes.

O objetivo deste grupo é abordar e interagir com outros usuários sobre suas experiências em aspectos teóricos e práticos relacionados à atividade de teste de software a fim de melhorar o desenvolvimento dos testes em software.


10 comentários:

Ramilo disse...

Boa tarde Anne Caroline.

Conheci seu blog hoje! Comecei a trabalhar na área de testes no começo do ano passar em uma empresa parceira da Microsoft aqui em Petrópolis - Rio de Janeiro.

Estou a um ano implantando o processo de teste na empresa já que a mesma não tinha ate a minha chegada. Me formo esse ano em analise de sistemas e estava procurando uma fonte para troca de conhecimentos mais até então eram coisas muito vagas. Foi ae que achei seu blog. Já indiquei para todos da minha equipe, estamos lendo seus posts desde o primeiro e por isso o meu comentário aqui.

Vou ler todos os seus posts pode ter certeza e gostaria de lhe dar os parabéns pela ótima iniciativa.

Gostaria de ver com você também a possiblidade de você me add no msn para podermos trocar ideias sobre testes. Pegar algumas dicas com você de livros, blog, cursos e certificações, pois como estou fechando um ano de casa gostaria de começar a inovar mais do que simplismente ficar realizando testes manuais e estudando conteudo de internet.

Posso lhe dizer que esse 1 ano que estou aqui ja aprendi muito, mais é sempre bom ter alguem com alguma experiência na área para trocar ideias.

bom meu contato é ramilocoutinho@hotmail.com

Se puder entrar em contato fico grato.

Desde já muito obrigado pela atenção e parabéns outra vez pelo blog.

Att,
Ramilo Neves - Analista de Teste

Anne Caroline disse...

Oi Ramilo,

Muito obrigada pelo comentário. Que bom que gostou do blog. :)

Escrevi um e-mail para você respondendo as suas perguntas sobre livros, certificações e etc.

Att.
Anne Caroline

willian disse...

Como esse tópico fala sobre introdução, vou aproveitar para agradecer (ao) aos responsáveis pelo blog e todos aqueles que vêm participando seja de forma ativa ou passiva com suas experiências e assim ajudando a quem tem dúvidas na área de teste de software.

Atuei pouco tempo com teste manual, na época quase não tive tempo de perceber ou conhecer como era realizado o processo para executar os testes. Hoje trabalho com automação de teste e não vejo muito a parte de preparação ou planejamento de teste.

Sendo assim, gostaria de saber como vc organiza o processo de teste no início do projeto?

willian disse...

Anne, esquci de mencionar o seu nome na minha dúvida.

Obrigado.

Anne Caroline disse...

Olá Willian,

Um processo de teste pode ser iniciado juntamente com o início do processo de desenvolvimento, pois existem atividades de verificação e validação que podem ser realizadas antes mesmo do código-fonte estar pronto.

A inspeção de software é um exemplo destas atividades, ela consiste em garantir a conformidade entre a especificação e os requisitos do cliente. Há também a criação dos roteiros de teste que são feitos a partir da especificação e os mesmos devem ser revisados para garantir a conformidade com a especificação.

Há também a inspeção de código-fonte, que pode ser feita antes do sistema ser colocado para teste.

Mesmo quando os testes são feitos de forma automática, eles devem ser planejados através de roteiros de teste que guiam o testador na hora da execução e pode garantir que os testes atinjam 100% de cobertura com relação aos requisitos do cliente.

Existe técnicas como design by contract, onde a especificação é descrita no próprio código fonte através de pré- e pós-condições para cada método, o que garante que a corretude do sistema com relação aos requisitos do sistema.

Bom, espero ter ajudado. Qualquer dúvida é só perguntar.

willian disse...

Anne,

sim, está ajudando e muito.

Planejamento de testes e Plano de testes são as mesmas coisas?

Anne Caroline disse...

Willian,

Acho que Planejamento de Testes é o mesmo que Plano de Teste, pois o plano de teste é um artefato onde o arquiteto de teste descreve todos os elementos necessários para a realização dos testes, como a quantidade de testadores, as funcionalidades a serem testadas, as estratégias de teste que serão utilizadas, as ferramentas, o critério de aceitação, entre outras coisas.

Desta forma, acho que o planejamento dos testes consiste na mesma coisa.

Se alguém souber ser há diferença entre estes dois termos, por favor nos avise. :)

Felipe Costa disse...
Este comentário foi removido pelo autor.
Beatriz disse...

Olá Anne!
Gostei muito do seu blog.
Agora me encontro na seguinte situação:
estou me formando este ano e eu e meu grupo estamos desenvolvendo uma ferramenta para teste de software (bug traker) e estamos com muita dificuldade de literatura sobre isso, não digo pesquisa na internet, mas livros mesmo.
Você poderia nos ajudar com isso?

Muito Obrigada!
Beatriz Farias - São Paulo

Anne Caroline disse...

Olá Beatriz,

Um livro que recomendo bastante sobre conceitos de teste de software é o livro Introdução de Teste de Software de José Carlos Maldonado. Livros bons também são os de Leonardo Molinaria, linguagem de fácil entendimento.

Boa sorte no projeto,
Anne