Multi-Level Mutation Testing of Java and AspectJ Programs Supported by the Proteum / AJv 2 Tool

The application of testing techniques and the associated test selection criteria strongly relies on adequate tooling support. This paper describes the evolution of Proteum/AJ, a tool originally conceived to support the mutation testing of aspectoriented (AO) programs. Proteum/AJ automates the application of AspectJ-specific mutation operators. Its evolution, named Proteum/AJv2, also supports the application of unit mutation operators in both Java (object-oriented) and AspectJ programs through a newly graphical user interface (GUI). We show how the tool architecture and the use of design patterns facilitated the addition of mutation operators as well as the GUI development. We also describe results of a preliminary assessment study that comprised the application of both traditional (unit) and AO-specific mutation operators in a complete mutation testing cycle. Demo Video: http://www.youtube.com/watch?v=v1hxRKifXbc

[1]  Fabiano Cutigi Ferrari,et al.  Automating the mutation testing of aspect-oriented Java programs , 2010, AST '10.

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

[3]  Auri Marcelo Rizzo Vincenzi,et al.  Object-oriented: definition, implementation and analysis of validation and testing resources , 2004 .

[4]  Fabiano Cutigi Ferrari,et al.  Towards a Reference Architecture for Software Testing Tools , 2007, SEKE.

[5]  이준상,et al.  미래 소프트웨어 개발기술 : Aspect - Oriented Programming과 Subject - Oriented Programming , 2003 .

[6]  Auri Marcelo Rizzo Vincenzi,et al.  Toward the determination of sufficient mutant operators for C † , 2001, Softw. Test. Verification Reliab..

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

[8]  Joseph Robert Horgan,et al.  Assessing testing tools in research and education , 1992, IEEE Software.

[9]  Péricles Rafael Oliveira Alves,et al.  Avoiding code pitfalls in Aspect-Oriented Programming , 2016, Sci. Comput. Program..

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

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

[12]  Wynne Hsu,et al.  DESIGN OF MUTANT OPERATORS FOR THE C PROGRAMMING LANGUAGE , 2006 .

[13]  Fabiano Cutigi Ferrari,et al.  Towards the Establishment of a Sufficient Set of Mutation Operators for AspectJ Programs , 2014 .

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