Dual Mutation: The Save the Mutants Approach

  • Márcio Eduardo Delamaro UNIVEM

Resumo


Mutation testing is a fault based testing criterion that has been widely used and studied. It has been shown an eective fault revealing criterion and its characteristics allow its use in a large range of entities like regular programs and behavioral specications of real time systems. To evaluate the adequacy of a test set T in the test of a program P, mutation testing uses a set of alternative implementations of P called mutants. The adequacy of T is assessed by its ability on demonstrate that the mutants produce dierent results of P. In this paper we present the idea of Dual Mutation Testing (DMT). DMT uses the same mutants as mutation testing but requires test cases that show that the mutants can produce the same results of P. In a case study we apply Dual Mutation Testing and compare it to traditional mutation testing.
Palavras-chave: software testing, mutation testing, dual mutation testing

Referências

T. A. Budd, R. A. DeMillo, R. J. Lipton, and F. G. Sayward. Theoretical and empirical studies on using program mutation to test the functional correcteness of programs. In Proceedings of the 7th ACM Symposium on Principles of Programming Languages, pages 220233, New York, NY, 1980.

M. E. Delamaro, J. C. Maldonado, and A. P. Mathur. Interface Mutation: An Approach for Integration Testing. IEEE Transactions on Software Engineering, 27(3):228247, March 2001.

M. E. Delamaro, J. C. Maldonado, and A. M. R. Vincenzi. Proteum/IM 2.0: An integrated mutation testing environment. In Mutation 2000 Symposium, pages 91101, San Jose, CA, October 2000. Kluwer Academic Publishers.

R. A. DeMillo and A. J. Outt. Constraint Based Automatic Test Data Generation. IEEE Transactions on Software Engineering, 17(9):900910, September 1991.

J. Duran and S. Ntafos. An evaluation of random testing. IEEE Transactions on Software Engineering, SE-10:438444, July

D. Hamlet and R. Taylor. Partition Testing Does Not Inspire Condence. IEEE Transactions on Software Engineering, 16(12):14021411, December 1990.

R. F. Jorge. Teste de mutação: Subsídios para a redução do custo de aplicação. Master's thesis, ICMC-USP, São Carlos SP, February 2002.

R. F. Jorge, M. E. Delamaro A. M. R. Vincenzi, and J. C. Maldonado. Teste de Mutação: Estratégias Baseadas em Equivalência de Mutantes para Redução do Custo de Aplicação (Mutation Testing: Equivalency Based Strategies for Cost Reduction - in Portuguese). In XXVII Latin-American Conference on de Informatics (CLEI), Meridas, Venezuela, June 2001.

A. P. Mathur. Performance, Eectiveness and Reliability Issues in Software Testing. In Proceeding of the 15th Annual International Computer Software and Applications Conference, pages 604605, Tokio, Japan, September 1991.

L.J. Morell. A theory of fault-based testing. IEEE Transactions on Software Engineering, 16(8):844857, August 1990.

A. J. Out and W. M. Craft. Using compiler optimization techniques to detect equivalent mutants. Journal of Software Testing Validation and Reliability, 4(3):131 154, 1994.

A. J. Outt. Coupling Eect: Fact or Fiction. In Proceedings of the 3rd Symposium on Software Testing, Analysis, and Verication (ISSTA'89), pages 131140, Key West, FL, December 1989.

A. J. Outt. Investigations of the software testing coupling eect. ACM Transactions on Software Engineering Methodology, 1(1):318, January 1992.

A. J. Outt, A. Lee, G. Rothermel, R. H. Untch, and C. Zapf. An Experimen- tal Determination of Sucient Mutant Operators. ACM Transactions on Software Engineering Methodology, 5(2):99118, 1996.

A. J. Outt, G. Rothermel, and C. Zapf. An Experimental Evaluation of Selective Mutation. In Proceedings of the 15th International Conference on Software Engineering, pages 100107, Baltimore, MD, May 1993.

K. S. H. T. Wah. Fault coupling in nite bijective functions. Journal of Software Testing Verication and Reliability, 5(1):347, March 1995.

E. J. Weyuker and B. Jeng. Analyzing Partition Testing Strategies. IEEE Transactions on Software Engineering, 17(7):703711, July 1991.

W. E. Wong. On Mutation and Data Flow. PhD dissertation, Department of Computer Science, Purdue University, W. Lafayette, IN, December 1993.

W. E. Wong and A. P. Mathur. Reducing the Cost of Mutation Testing: An Empirical Study. The Journal of Systems and Software, 31(3):185196, December 1995.

W. E. Wong, A. P. Mathur, and J. C. Maldonado. Mutation Versus All-uses: An Empirical Evaluation of Cost, Strength, and Eectiveness. In Proceedings of the International Conference on Software Quality and Productivity, pages 258265, Hong Kong, December 1994.
Publicado
31/05/2004
DELAMARO, Márcio Eduardo. Dual Mutation: The Save the Mutants Approach. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 3. , 2004, Brasília. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2004 . p. 234-246. DOI: https://doi.org/10.5753/sbqs.2004.16196.