Tool-Supported Advanced Mutation Approach for Verification of C# Programs

Mutation testing is a fault-based testing technique used to inject faults into an existing program and see if its test suite is sensitive enough to detect common faults. We are interested in using the mutation analysis to evaluate, compare and improve quality assurance techniques for testing object-oriented mechanisms and other advanced features of C# programs. This paper provides an overview of a current version of the CREAM system (creator of mutants), and reports on its use in experimental research. We apply advanced, object-oriented mutation operators to testing of open-source C# programs and discuss the results.

[1]  Gregg Rothermel,et al.  A controlled experiment assessing test case prioritization techniques via mutation faults , 2005, 21st IEEE International Conference on Software Maintenance (ICSM'05).

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

[3]  Mario Piattini,et al.  Integrating techniques and tools for testing automation , 2007, Softw. Test. Verification Reliab..

[4]  Jeffrey Voas,et al.  Software Fault Injection , 1998 .

[5]  Anna Derezinska Advanced mutation operators applicable in C# programs , 2006, SET.

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

[7]  A. Jefferson Offutt,et al.  Inter-class mutation operators for Java , 2002, 13th International Symposium on Software Reliability Engineering, 2002. Proceedings..

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

[9]  John A. Clark,et al.  Investigating the effectiveness of object-oriented strategies with the mutation method (abstract only) , 2001 .

[10]  James H. Andrews,et al.  General Test Result Checking with Log File Analysis , 2003, IEEE Trans. Software Eng..

[11]  Anna Derezińska,et al.  Cream - a system for object-oriented mutation of C# programs , 2007 .

[12]  J. Dingel,et al.  ExMAn: A Generic and Customizable Framework for Experimental Mutation Analysis , 2006, Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006).

[13]  A. Jefferson Offutt,et al.  MuJava: an automated class mutation system , 2005, Softw. Test. Verification Reliab..

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

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

[16]  Yong Rae Kwon,et al.  Empirical evaluation of orthogonality of class mutation operators , 2004, 11th Asia-Pacific Software Engineering Conference.

[17]  Anna Derezinska Quality Assessment of Mutation Operators Dedicated for C# Programs , 2006, 2006 Sixth International Conference on Quality Software (QSIC'06).

[18]  Lionel C. Briand,et al.  Is mutation an appropriate tool for testing experiments? , 2005, ICSE.

[19]  J. A. McDermid,et al.  Investigating the Effectiveness of Object-Oriented Testing Strategies with the Mutation MethodSun-Woo Kim, John A. Clark *, John A. McDermid , 2001 .

[20]  Lionel C. Briand,et al.  Using Mutation Analysis for Assessing and Comparing Testing Coverage Criteria , 2006, IEEE Transactions on Software Engineering.

[21]  Sang-Woon Kim,et al.  MUGAMMA: Mutation Analysis of Deployed Software to Increase Confidence and Assist Evolution , 2006, Second Workshop on Mutation Analysis (Mutation 2006 - ISSRE Workshops 2006).

[22]  John A. Clark,et al.  Investigating the effectiveness of object‐oriented testing strategies using the mutation method , 2001 .