Operadores Essenciais de Interface: Um Estudo de Caso
Resumo
Apesar de evidências obtidas em estudos empíricos da eficácia do Teste de Mutação, seu alto custo, decorrente principalmente do grande número de mutantes gerados, tem motivado a proposição de diversas abordagens alternativas para a sua aplicação [1, 2, 3, 16, 19, 20, 27], dentre essas a determinação de conjuntos essenciais de operadores de mutação. Nesse contexto, alguns estudos já foram conduzidos para a determinação de um conjunto essencial de operadores de mutação para as linguagens Fortran e C [2, 3, 20, 27]. A aplicação do teste de mutação no nível de unidade para a linguagem C é apoiada pela ferramenta Proteum, que implementa 71 operadores de mutação [4]. No estudo empírico conduzido por Barbosa [2, 3], utilizando a ferramenta Proteum, foi proposto o procedimento Essencial, contribuindo para a determinação de um conjunto essencial de operadores de mutação para a linguagem C. Explorando o conceito de mutação no teste de integração foi proposto o critério Mutação de Interface [5]. A ferramenta PROTEUM/IM, desenvolvida para apoiar a aplicação do critério Mutação de Interface, possui 33 operadores de mutação desenvolvidos para modelar erros típicos de integração [5]. Este trabalho investiga a aplicação do procedimento Essencial para a determinação de um conjunto essencial de operadores para o teste de integração, contribuindo para o estabelecimento de estratégias de teste incrementais baseadas no teste de mutação que englobe as fases de unidade e de integração.
Referências
BARBOSA, E.F.; VINCENZI, A.M.R.; MALDONADO, J.C. "Uma Contribuição para a Determinação de um Conjunto Essencial de Operadores de Mutação no Teste de Programas C". Anais do XII Simpósio Brasileiro de Engenharia de Software, Maringá, PR, Brasil, Outubro, 1998.
BARBOSA, E.F.; Uma Contribuição para a Determinação de um Conjunto Essencial de Operadores de Mutação no Teste de Programas C, Dissertação de Mestrado, ICMC/USP, São Carlos, SP, Novembro,1998.
DELAMARO, M.E.; Proteum - Um Ambiente de Teste Baseado na Análise de Mutantes, Dissertação de Mestrado, ICMC/USP, São Carlos, SP, Outubro, 1993.
DELAMARO, M.E. Mutação de Interface: Um Critério de Adequação Interprocedimental para o Teste de Integração. Tese de Doutorado, IFSC/USP, São Carlos, SP, Junho, 1997.
DELAMARO, M.E.; MALDONADO, J.C.; MATHUR, A.P. "Interface Mutation: An Approach for Integration Testing", IEEE Transactions on Software Engeneering, (sendo submetido), 1998.
DELAMARO, M.E.; MALDONADO, J.C.; PASQUINI, A.; MATHUR, A.P. "Interface Mutation Test Adequacy Criterion: An Empirical Evaluation", Relatório Técnico em preparação, 1998.
DEMILLO, R.A. "Mutation Analysis as a Tool for Software Quality Assurance". Anais da COMPSAC80, Chicago, IL, Outubro, 1980.
DEMILLO, R.A.; GWIND, D.S.; KING, K.N.; MCKRAKEN, W.N.; OFFUTT, A.J. "An Extended Overview of the Mothra Testing Environment". Anais do II Workshop on Software Testing, Verification and Analysis, Banff, Canadá, Julho, 1988.
FRANKL, P.G.; WEYUKER, E.J. "A Formal Analysis of the Fault-Detecting Ability of Testing Methods". IEEE Transactions on Software Engineering, v. 19, n. 3, pp. 202-213, Março, 1993.
HALEY, A.; ZWEBEN, S. "Development and Aplication of a White Box Approach to Integration Testing". The Journal of Systems and Software, n. 4, pp. 309-315, Abril, 1984.
HARROLD, M.J.; SOFFA, M.L. "Selecting and Using Data for Integration Test". IEEE Software, v. 8, n. 2, pp. 58-65, Março, 1991.
LINNENKUGEL, U.; MÜLLERBURG, M. "Test Data Selection Criteria for (Software) Integration Testing". Anais da I International Conference on Systems Integration, pp. 709-717, Mornstown, NJ, Abril, 1990.
MALDONADO, J.C.; Critérios Potenciais Usos: Uma Contribuição ao Teste Estrutural de Software, Tese de Doutorado, DCA/FEE/UNICAMP, Campinas, SP, Julho, 1991.
MALDONADO. J.C. Critérios de Teste de Software: Aspectos Teóricos, Empíricos e de Automatização. Livre Docência, ICMC-USP, São Carlos, SP, Janeiro, 1997.
MATHUR, A.P.; "Performance, Effectiveness, and Reliability Issues in Software Testing", Proceedings of the Fifteenth Annual International Computer Software and Applications Conference, Tóquio, Japão, 1991, pp. 604-605.
MATHUR, A.P.; WONG, W.E.; "Evaluation of the Cost of Alternate Mutation Strategies", VII SBES - Simpósio Brasileiro de Engenharia de Software, Rio de Janeiro, RJ, Outubro, 1993.
OFFUTT, A.J. "Coupling Effect: Fact or Fiction", Anais do III Symposium on Software Testing, Analysis and Verification, Key West, FL, pp. 131-140, Dezembro, 1989.
OFFUTT, A.J.; ROTHERMEL, G.; ZAPF, C.; "An Experimental Evaluation of Selective Mutation", Proceedings of the 15th International Conference on Software Engineering, Baltimore, MD, Maio, 1993, pp. 100-107.
OFFUTT, A.J. et al.; "An Experimental Determination of Sufficient Mutant Operators", ACM Transactions on Software Engineering Methodology, v. 5, n. 2, Abril, 1996, pp. 99-118.
PRESSMAN, R.S. Software Engineering - A Practitioner's Approach. McGraw-Hill, 4ª Edição, 1997.
RAPPS, S.; WEYUKER, E.J; "Selecting Software Test Data Using Data Flow Information", IEEE Transactions on Software Engineering, SE-11(4), Abril, 1985.
SOUZA, S.R.S.; Avaliação do Custo e Eficácia do Critério Análise de Mutantes na Atividade de Teste de Software, Dissertação de Mestrado, ICMC/USP, São Carlos, SP, Junho, 1996.
VINCENZI, A.M.R. Subsídios para o Estabelecimento de Estratégias de Teste Baseadas na Técnica de Mutação. Dissertação de Mestrado, ICMC/USP, São Carlos, SP, Novembro,1998.
WONG, W.E.; On Mutation and Data Flow, Tese de Doutorado, Software Engineering Research Center - Purdue University, West Lafayette, IN, Dezembro, 1993.
WONG, W.E. et al.; "Constrained Mutation in C Programs", VIII Simpósio Brasileiro de Engenharia de Software, Curitiba, PR, Outubro, 1994, pp. 439-452.
WONG, W.E. et al; "A Comparison of Selective Mutation in C and Fortran", Workshop do Projeto Validação e Teste de Sistemas de Operação, Águas de Lindóia, SP, Janeiro, 1997, pp. 71-84.