Survey on Different Approaches for Mutation Testing

One of the effective techniques for testing is mutation testing. Mutant can be created by changing the syntax of a program. To distinguish the mutant from the original program, an effective test suite is required. The Mutation testing is a testing method aimed at improving the adequacy of test suites and estimating the number of faults present in systems under test. The mutations can be applied to the source code and the semantics of the language. The mutations of the semantics of the language signify possible misunderstandings of the description language and thus capture a different class of faults. As the possiblemisunderstandings are highly context reliant, this context should be used to determine which semantic mutants should be formed. The approach is illustrated through examples and code in php. In addition, a semantic mutation testing tool for Php is proposed.

[1]  Mark Harman,et al.  The relationship between program dependence and mutation analysis , 2001 .

[2]  Mark Harman,et al.  An Analysis and Survey of the Development of Mutation Testing , 2011, IEEE Transactions on Software Engineering.

[3]  Andreas Zeller,et al.  The Impact of Equivalent Mutants , 2009, 2009 International Conference on Software Testing, Verification, and Validation Workshops.

[4]  John A. Clark,et al.  Semantic Mutation Testing , 2010, 2010 Third International Conference on Software Testing, Verification, and Validation Workshops.

[5]  Maryam Umar AN EVALUATION OF MUTATION OPERATORS FOR EQUIVALENT MUTANTS , 2006 .

[6]  Roger S. Pressman,et al.  Software Engineering: A Practitioner's Approach , 1982 .

[7]  Mark Harman,et al.  Higher Order Mutation Testing , 2009, Inf. Softw. Technol..

[8]  Douglas Baldwin,et al.  Heuristics for Determining Equivalence of Program Mutations. , 1979 .

[9]  Robert M. Hierons,et al.  SMT-C: A Semantic Mutation Testing Tools for C , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[10]  M. R. Woodward,et al.  From weak to strong, dead or alive? an analysis of some mutation testing issues , 1988, [1988] Proceedings. Second Workshop on Software Testing, Verification, and Analysis.

[11]  A. Jefferson Offutt,et al.  The class-level mutants of MuJava , 2006, AST '06.

[12]  John A. Clark,et al.  MESSI: Mutant Evaluation by Static Semantic Interpretation , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[13]  J. Zobel,et al.  Mutation Testing for the New Century , 2001, The Springer International Series on Advances in Database Systems.

[14]  Gregg Rothermel,et al.  An experimental determination of sufficient mutant operators , 1996, TSEM.

[15]  Michel Delaunay,et al.  Towards Mutation Analysis for Lustre Programs , 2008, SLA++P@ETAPS.

[16]  Sigrid Eldh Software Testing Techniques , 2007 .

[17]  Mike Papadakis,et al.  Evaluating Mutation Testing Alternatives: A Collateral Experiment , 2010, 2010 Asia Pacific Software Engineering Conference.

[18]  Mike Papadakis,et al.  An Empirical Evaluation of the First and Second Order Mutation Testing Strategies , 2010, 2010 Third International Conference on Software Testing, Verification, and Validation Workshops.

[19]  Javier Tuya,et al.  Mutating database queries , 2007, Inf. Softw. Technol..