Using Structural Similarity to Classify Tests in Mutation Testing

Mutation testing is an effective technique for assessing quality of tests provided for a system. However it suffers from high computational cost of executing mutants of the system. In this paper a method of classifying such mutants is proposed. This classification is based on using an edit distance kernel and k-NN classifier. Using the results of this classification it is possible to predict whether a mutant would be detected by tests or not. Thus the application of the approach can help to lower the number of mutants that have to be executed and so also to lower the cost of using the mutation testing.

[1]  John A. Clark,et al.  Investigating the effectiveness of object‐oriented testing strategies using the mutation method , 2001, Softw. Test. Verification Reliab..

[2]  K. N. King,et al.  A fortran language system for mutation‐based software testing , 1991, Softw. Pract. Exp..

[3]  Hisashi Kashima,et al.  Marginalized Kernels Between Labeled Graphs , 2003, ICML.

[4]  A. Jefferson Offutt,et al.  An Experimental Evaluation of Data Flow and Mutation Testing , 1996 .

[5]  A. Jefferson Offutt,et al.  MuJava: a mutation system for java , 2006, ICSE.

[6]  John A. Clark,et al.  Class Mutation : Mutation Testing for Object-Oriented Programs , 2000 .

[7]  Philippe Chevalley,et al.  Applying mutation analysis for object-oriented programs using a reflective approach , 2001, Proceedings Eighth Asia-Pacific Software Engineering Conference.

[8]  Joanna Strug,et al.  Machine Learning Approach in Mutation Testing , 2012, ICTSS.

[9]  Timothy Alan Budd,et al.  Mutation analysis of program test data , 1980 .

[10]  J. A. Acree On mutation , 1980 .

[11]  Bernhard Schölkopf,et al.  Learning with kernels , 2001 .

[12]  A.P. Mathur Performance, effectiveness, and reliability issues in software testing , 1991, [1991] Proceedings The Fifteenth Annual International Computer Software & Applications Conference.

[13]  Phyllis G. Frankl,et al.  All-uses vs mutation testing: An experimental comparison of effectiveness , 1997, J. Syst. Softw..

[14]  Leszek Kotulski,et al.  Frequent Pattern Mining in a Design Supporting System , 2010 .

[15]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[16]  Kaspar Riesen,et al.  Dissimilarity Based Vector Space Embedding of Graphs Using Prototype Reduction Schemes , 2009, MLDM.

[17]  Michael Collins,et al.  New Ranking Algorithms for Parsing and Tagging: Kernels over Discrete Structures, and the Voted Perceptron , 2002, ACL.

[18]  Thomas Gärtner,et al.  A survey of kernels for structured data , 2003, SKDD.

[19]  Kaspar Riesen,et al.  Improving vector space embedding of graphs through feature selection algorithms , 2011, Pattern Recognit..

[20]  Philip S. Yu,et al.  Substructure similarity search in graph databases , 2005, SIGMOD '05.

[21]  Barbara Strug,et al.  Automatic design quality evaluation using graph similarity measures , 2013 .

[22]  Gregg Rothermel,et al.  An experimental evaluation of selective mutation , 1993, Proceedings of 1993 15th International Conference on Software Engineering.

[23]  Thomas Gärtner,et al.  Kernels for structured data , 2008, Series in Machine Perception and Artificial Intelligence.

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

[25]  Weichen Eric Wong On mutation and data flow , 1993 .

[26]  Baowen Xu,et al.  A Novel Method of Mutation Clustering Based on Domain Analysis , 2009, SEKE.

[27]  John A. Clark,et al.  The Rigorous Generation of Java Mutation Operators Using HAZOP , 1999 .

[28]  John A. Clark,et al.  Assessing Test Set Adequacy for Object-Oriented Programs Using Class Mutation , 2000 .

[29]  G. Myers,et al.  The Art of Software Testing: Myers/Art , 2012 .

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

[31]  Kaspar Riesen,et al.  Recent advances in graph-based pattern recognition with applications in document analysis , 2011, Pattern Recognit..

[32]  Takashi Washio,et al.  An Apriori-Based Algorithm for Mining Frequent Substructures from Graph Data , 2000, PKDD.

[33]  David Haussler,et al.  Convolution kernels on discrete structures , 1999 .

[34]  Pascale Thévenod-Fosse,et al.  A mutation analysis tool for Java programs , 2003, International Journal on Software Tools for Technology Transfer.

[35]  Tomasz Imielinski,et al.  Mining association rules between sets of items in large databases , 1993, SIGMOD Conference.

[36]  Dimitri Van De Ville,et al.  Vector Space Embedding of Undirected Graphs with Fixed-cardinality Vertex Sequences for Classification , 2010, 2010 20th International Conference on Pattern Recognition.

[37]  Jian Pei,et al.  Mining Frequent Patterns without Candidate Generation: A Frequent-Pattern Tree Approach , 2006, Sixth IEEE International Conference on Data Mining - Workshops (ICDMW'06).

[38]  Kaspar Riesen,et al.  Cluster Ensembles Based on Vector Space Embeddings of Graphs , 2009, MCS.

[39]  Barbara Strug,et al.  Using Kernels on Hierarchical Graphs in Automatic Classification of Designs , 2011, GbRPR.

[40]  Hans-Peter Kriegel,et al.  Shortest-path kernels on graphs , 2005, Fifth IEEE International Conference on Data Mining (ICDM'05).