Teste de software

Disponível somente no TrabalhosFeitos
  • Páginas : 16 (3852 palavras )
  • Download(s) : 0
  • Publicado : 13 de junho de 2012
Ler documento completo
Amostra do texto
Introdução ao Teste de Software£
Ellen Francine Barbosa José Carlos Maldonado Auri Marcelo Rizzo Vincenzi Universidade de São Paulo — ICMC/USP {francine, jcmaldon, auri}@icmc.sc.usp.br Márcio Eduardo Delamaro Universidade Estadual de Maringá — DIN/UEM delamaro@din.uem.br Simone do Rocio Senger de Souza Universidade Estadual de Ponta Grossa — UEPG rocio@icmc.sc.usp.br Mario Jino UniversidadeEstadual de Campinas — DCA/FEEC/UNICAMP jino@dca.fee.unicamp.br

Resumo Neste texto são apresentados alguns critérios de teste de software, conceitos pertinentes e ferramentas de apoio. São abordados critérios de teste funcional, estrutural – baseados em fluxo de controle e em fluxo de dados – e baseados em mutação. Ênfase é dada no teste de mutação. Apesar de sua eficácia em revelar a presença deerros, o teste de mutação apresenta problemas de custo relacionados ao grande número de mutantes gerados e à determinação de mutantes equivalentes, mesmo para pequenos programas. Visando a reduzir os custos de aplicação do teste de mutação diversos estudos teóricos e empíricos vêm sendo realizados. Uma síntese dos principais estudos empíricos relacionados ao teste de mutação é apresentada. Essesestudos procuram estabelecer uma estratégia de teste que viabilize a utilização do teste de mutação no teste de produtos comerciais de software. Ilustram-se a atividade de teste e os problemas pertinentes utilizando-se as ferramentas ÊÇÌ Í Á , que apóiam, respectivamente, critérios estruturais, o Å Å PokeTool, Proteum e È critério Análise de Mutantes e o critério Mutação de Interface. Identificam-seainda outras iniciativas e esforços da comunidade para a automatização desses critérios.
£ Partes deste

trabalho foram extraídas de [1] e [2].

1

1 Introdução
A Engenharia de Software evoluiu significativamente nas últimas décadas procurando estabelecer técnicas, critérios, métodos e ferramentas para a produção de software, em conseqüência da crescente utilização de sistemas baseados emcomputação em praticamente todas as áreas da atividade humana, o que provoca uma crescente demanda por qualidade e produtividade, tanto do ponto de vista do processo de produção como do ponto de vista dos produtos gerados. A Engenharia de Software pode ser definida como uma disciplina que aplica os princípios de engenharia com o objetivo de produzir software de alta qualidade a baixo custo [3].Através de um conjunto de etapas que envolvem o desenvolvimento e aplicação de métodos, técnicas e ferramentas, a Engenharia de Software oferece meios para que tais objetivos possam ser alcançados. O processo de desenvolvimento de software envolve uma série de atividades nas quais, apesar das técnicas, métodos e ferramentas empregados, erros no produto ainda podem ocorrer. Atividades agregadas sob o nomede Garantia de Qualidade de Software têm sido introduzidas ao longo de todo o processo de desenvolvimento, entre elas atividades de VV&T – Verificação, Validação e Teste, com o objetivo de minimizar a ocorrência de erros e riscos associados. Dentre as técnicas de verificação e validação, a atividade de teste é uma das mais utilizadas, constituindo-se em um dos elementos para fornecer evidências daconfiabilidade do software em complemento a outras atividades, como por exemplo o uso de revisões e de técnicas formais e rigorosas de especificação e de verificação [4]. A atividade de teste consiste de uma análise dinâmica do produto e é uma atividade relevante para a identificação e eliminação de erros que persistem. Do ponto de vista de qualidade do processo, o teste sistemático é uma atividadefundamental para a ascensão ao Nível 3 do Modelo CMM do Software Engineering Institute — SEI [5]. Ainda, o conjunto de informação oriundo da atividade de teste é significativo para as atividades de depuração, manutenção e estimativa de confiabilidade de software [3,6–9]. Salienta-se que a atividade de teste tem sido apontada como uma das mais onerosas no desenvolvimento de software [3, 10, 11]....
tracking img