Evaluation of The Cost of Alternate Mutation Strategies

  • Aditya P. Mathur Purdue University
  • Weichen E. Wong Purdue University

Resumo


Entre as várias estratégias de teste existentes, “mutation testing” (teste por mutação) tem sido empiricamente demonstrado ser o mais efetivo em detectar falhas. Entretanto, “mutation testing” frequentemente impõe uma demanda inaceitável nos recursos computacionais e humanos, devido ao grande número de mutantes que necessitam ser compilados e executados em um ou mais casos de teste. Além disso, à pessoa responsável pelo teste precisa examinar vários mutantes e analisá-los em relação a uma possível equivalência com o programa sendo testado. Por estas razões, “mutation testing” é em geral considerado por engenheiros de teste como dispendioso demais para ser usado. Como um componente significativo do custo do “mutation testing” é a execução dos mutantes nos diversos casos de teste, nós acreditamos que o custo pode ser dramaticamente reduzido diminuindo-se o número de casos de teste que precisam ser examinados. Nós reportamos os resultados de um caso de teste projetado para investigar duas alternativas para a redução do custo de “mutation testing”. As alternativas consideradas são: (1) 2% das mutações selecionadas aleatoriamente e (2) mutação restrita. Apresentamos dados experimentais indicando que ambas alternativas resultam em conjuntos de teste que distinguem um número significativo de todos mutantes e fornecem alta cobertura para “todos os usos” (“all-uses”).

Referências

A. T. Acree. "On mutation". PhD thesis, School of Information and Computer Science, Georgia Institute of Technology, Atlanta, GA, 1980. Technical Report GIT-ICS-80/12.

A. T. Acree, T. A. Budd, R. A. DeMillo, R. J. Lipton, and F. G. Sayward. "Mutation analysis". Technical Report GIT-ICS-79/08, School of Information and Computer Science, Georgia Institute of Technology, Atlanta, GA, September 1979.

R. S. Boyer, B. Elspas, and K. N. Levitt. "SELECT - a formal system for testing and debugging programs by symbolic execution". Sigplan Notices, 10(6):234-245, June 1975.

T. A. Budd. "Mutation Analysis of Program Test Data". PhD thesis, Yale University, New Haven, CT, 1980.

B. J. Choi, R. A. DeMillo E. W. Kranser, A. P. Mathur, R. J. Martin, A. J. Offutt, H. Pan, and E. H. Spafford. "The Mothra toolset". In Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences, HI, January 1989.

L. A. Clarke. "A system to generate test data and symbolically execute programs". IEEE Trans. on Software Engineering, SE-2(3):215-222, September 1976.

R. A. DeMillo, R. J. Lipton, and F. G. Sayward. "Hints on test data selection: Help for the practicing programmer". JEEE Computer, 11(4):34-41, April 1978.

R. A. DeMillo and A, J. Offutt. "Constraint-based automatic test data generation". IEEE Trans. on Software Engineering, 17(9):900-910, September 1991.

P. G. Frankl and S. N. Weiss. "Is data flow testing more effective than branch testing: An empirical study". In Proceedings Quality Week 1991, San Francisco, 1991.

J. B. Goodenough and S. L. Gerhart. "Toward a theory of test data selection". IEEE Trans. on Software Engineering, SE-1(2):156-173, June 1975.
Publicado
27/10/1993
MATHUR, Aditya P.; WONG, Weichen E.. Evaluation of The Cost of Alternate Mutation Strategies. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 7. , 1993, Rio de Janeiro/RJ. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 1993 . p. 320-334. DOI: https://doi.org/10.5753/sbes.1993.24414.