Search based techniques and mutation analysis in automatic test case generation: A survey

Mutation testing is an effective adequacy criteria and has been researched upon a lot in the past decades, but lacks practical application due to its high cost. Mutation testing for test data generation has not been studied much. This paper is an up-to-date review of the technologies that have been applied with mutation testing for automatic generation of test data which is optimized regarding time, cost and code coverage. The survey reveals an increase in interest regarding the meta-heuristic techniques along with mutation testing.

[1]  Gordon Fraser,et al.  Test suite generation with memetic algorithms , 2013, GECCO '13.

[2]  Mike Papadakis,et al.  Automatic Mutation Test Case Generation via Dynamic Symbolic Execution , 2010, 2010 IEEE 21st International Symposium on Software Reliability Engineering.

[3]  Andreas Zeller,et al.  Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering , 2011, FSE 2011.

[4]  Mike Papadakis,et al.  Test Data Generation Techniques for Mutation Testing: A Systematic Mapping , 2014, CIbSE.

[5]  Gordon Fraser,et al.  Sound empirical evidence in software testing , 2012, 2012 34th International Conference on Software Engineering (ICSE).

[6]  H. Haga,et al.  Automatic test case generation based on genetic algorithm and mutation analysis , 2012, 2012 IEEE International Conference on Control System, Computing and Engineering.

[7]  Richard J. Lipton,et al.  Hints on Test Data Selection: Help for the Practicing Programmer , 1978, Computer.

[8]  John A. Clark,et al.  Automatic Test Data Generation for Multiple Condition and MCDC Coverage , 2009, 2009 Fourth International Conference on Software Engineering Advances.

[9]  Cássio L. Rodrigues,et al.  An elitist evolutionary algorithm for automatically generating test data , 2012, 2012 IEEE Congress on Evolutionary Computation.

[10]  Y. L. Traon,et al.  From genetic to bacteriological algorithms for mutation‐based testing , 2005, Softw. Test. Verification Reliab..

[11]  Giuliano Antoniol,et al.  Automatic mutation test input data generation via ant colony , 2007, GECCO '07.

[12]  Mark Harman,et al.  Strong higher order mutation-based test data generation , 2011, ESEC/FSE '11.

[13]  Auri Marcelo Rizzo Vincenzi,et al.  A coevolutionary algorithm to automatic test case selection and mutant in Mutation Testing , 2013, 2013 IEEE Congress on Evolutionary Computation.

[14]  Mike Papadakis,et al.  Mutation based test case generation via a path selection strategy , 2012, Inf. Softw. Technol..

[15]  Gordon Fraser,et al.  Evolutionary Generation of Whole Test Suites , 2011, 2011 11th International Conference on Quality Software.

[16]  Macario Polo,et al.  Mutation at System and Functional Levels , 2010, 2010 Third International Conference on Software Testing, Verification, and Validation Workshops.

[17]  Gordon Fraser,et al.  The Seed is Strong: Seeding Strategies in Search-Based Software Testing , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[18]  Jean-Marc Jézéquel,et al.  Automatic test case optimization: a bacteriologic algorithm , 2005, IEEE Software.

[19]  A. J. Offutt A practical system for mutation testing: help for the common programmer , 1994, Proceedings., International Test Conference.

[20]  Andreas Zeller,et al.  Mutation-Driven Generation of Unit Tests and Oracles , 2010, IEEE Transactions on Software Engineering.

[21]  Farshad Akbari,et al.  Implementation of Common Genetic and Bacteriological Algorithms in Optimizing Testing Data in Mutation Testing , 2010, 2010 International Conference on Computational Intelligence and Software Engineering.

[22]  Mark Harman,et al.  How to Overcome the Equivalent Mutant Problem and Achieve Tailored Selective Mutation Using Co-evolution , 2004, GECCO.

[23]  Mark Harman,et al.  Multi Objective Higher Order Mutation Testing with Genetic Programming , 2009 .

[24]  Shailesh Tiwari,et al.  An approach for mutation testing using elitist genetic algorithm , 2010, 2010 3rd International Conference on Computer Science and Information Technology.

[25]  Jean-Marc Jézéquel,et al.  Genes and bacteria for automatic test cases optimization in the .NET environment , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

[26]  G. Fraser Efficient Mutation Testing using Whole Test Suite Generation , 2012 .

[27]  Saudi Arabia,et al.  Using Evolutionary Algorithms for Higher-Order Mutation Testing , 2014 .

[28]  Gordon Fraser,et al.  Improving search-based test suite generation with dynamic symbolic execution , 2013, 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE).

[29]  Peter S. May,et al.  Test data generation : two evolutionary approaches to mutation testing , 2007 .

[30]  Alessandra Gorla,et al.  Search-based data-flow test generation , 2013, 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE).

[31]  Aditya P. Mathur,et al.  Foundations of Software Testing , 2007 .

[32]  William E. Howden,et al.  Weak Mutation Testing and Completeness of Test Sets , 1982, IEEE Transactions on Software Engineering.

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

[34]  Mike Papadakis,et al.  Searching and generating test inputs for mutation testing , 2013, SpringerPlus.

[35]  Gary McGraw,et al.  Software fault injection: inoculating programs against errors , 1997 .

[36]  Jean-Marc Jézéquel,et al.  Automatic test case optimization using a bacteriological adaptation model: application to .NET components , 2002, Proceedings 17th IEEE International Conference on Automated Software Engineering,.

[37]  M. Masud,et al.  Strategy for mutation testing using genetic algorithms , 2005, Canadian Conference on Electrical and Computer Engineering, 2005..

[38]  Mattias Bybro A Mutation Testing Tool for Java Programs Ett verktyg for mutationstestning av Javaprogram Examensarbete i Datalogi, 20p , 2003 .