Automated test data generation for mutation testing using AspectJ programs

Aspect oriented programming is a new paradigm of software development. It introduces new types of faults. Mutation testing is a technique which can tackle these faults systematically. The effectiveness of testing depends on the coverage of testing locations to find faults and mutant generation based on these faults using different mutation operators. In this paper, we present an automated mutation testing tool for aspect oriented programs which implements different mutation operators to handle faults. The mutation operators are based on pointcut, advice, intertype declaration and weaving type. The automation process can handle the test cases and mutants completely on unrestricted size of programs.

[1]  Tao Xie,et al.  Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs , 2008, 2008 19th International Symposium on Software Reliability Engineering (ISSRE).

[2]  Fabiano Cutigi Ferrari,et al.  Mutation Testing for Aspect-Oriented Programs , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[3]  Fabiano Cutigi Ferrari,et al.  An empirical evaluation of coupling metrics on aspect-oriented programs , 2010, WETSoM '10.

[4]  A. Jefferson Offutt,et al.  Detecting equivalent mutants and the feasible path problem , 1996, Proceedings of 11th Annual Conference on Computer Assurance. COMPASS '96.

[5]  Roopak Sinha,et al.  Adaptive Verification using Forced Simulation , 2005, FESCA@ETAPS.

[6]  D. Notkin,et al.  Automated Test Generation for AspectJ Programs , 2005 .

[7]  Akbar Siami Namin,et al.  On Sufficiency of Mutants , 2007, 29th International Conference on Software Engineering (ICSE'07 Companion).

[8]  Laurie A. Williams,et al.  Should software testers use mutation analysis to augment a test set? , 2009, J. Syst. Softw..

[9]  Nikolai Tillmann,et al.  Mutation Analysis of Parameterized Unit Tests , 2009, 2009 International Conference on Software Testing, Verification, and Validation Workshops.

[10]  Kapil Kumar,et al.  New Mutants Generation for Testing Java Programs , 2011 .

[11]  Evan Martin,et al.  Automated test generation for access control policies , 2006, OOPSLA '06.

[12]  James M. Bieman,et al.  Towards the Systematic Testing of Aspect-Oriented Programs , 2004 .

[13]  Yves Le Traon,et al.  Measuring design testability of a UML class diagram , 2005, Information and Software Technology.

[14]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[15]  Gregor Kiczales,et al.  Aspect-oriented programming , 2001, ESEC/FSE-9.

[16]  Phyllis G. Frankl,et al.  Mutation Testing for Java Database Applications , 2009, 2009 International Conference on Software Testing Verification and Validation.

[17]  Peri L. Tarr,et al.  Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications , 2006, OOPSLA 2006.

[18]  Cláudio Sant'Anna,et al.  On the Maintainability of Aspect-Oriented Software: A Concern-Oriented Measurement Framework , 2008, 2008 12th European Conference on Software Maintenance and Reengineering.

[19]  Márcio Eduardo Delamaro,et al.  Proteum - A Tool for the Assessment of Test Adequacy for C Programs User's guide , 1996 .

[20]  Jonas Mellin,et al.  Test Case Generation for Mutation-based Testing of Timeliness , 2006, Electron. Notes Theor. Comput. Sci..

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

[22]  Tao Xie,et al.  A framework and tool supports for generating test inputs of AspectJ programs , 2006, AOSD.