1 | Prasanth Anbalagan and Tao Xie Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs 19th International Symposium on Software Reliability Engineering {(ISSRE} 2008), 11-14 November 2008, Seattle/Redmond, WA, {USA}, 2008. |
|
| Abstract: Available soon... |
| @INPROCEEDINGS{AnbalaganX08,
author = {Prasanth Anbalagan and Tao Xie},
title = {Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs},
booktitle = {19th International Symposium on Software Reliability Engineering {(ISSRE} 2008), 11-14 November 2008, Seattle/Redmond, WA, {USA}},
year = {2008},
address = {},
month = {},
pages = {239--248}
} |
2 | Prasanth Anbalagan and Tao Xie Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs Proceedings of the 19th International Symposium on Software Reliability Engineering (ISSRE'08)Redmond, Washingto, 11-14 November 2008. |
|
| Abstract: Aspect-Oriented Programming (AOP) provides new modularization of software systems by encapsulating cross-cutting concerns. AspectJ, an AOP language, uses abstractions such as pointcuts, advice, and aspects to achieve AOP’s primary functionality. Faults in pointcuts can cause aspects to fail to satisfy their requirements. Hence, testing pointcuts is necessary in order to ensure correctness of aspects. In mutation testing of pointcuts (a type of fault-based pointcut testing), the number of mutants (i.e., variations) for pointcuts is usually large due to the usage of wildcards. It is tedious to manually identify effective mutants that are of appropriate strength and resemble closely the original pointcut expression, reflecting the kind of mistakes that developers may make. To reduce developers’ effort in this process, we have developed a new framework that automatically identifies the strength of each pointcut and generates pointcut mutants with different strengths. Developers can inspect the pointcut mutants and their join points for pointcut correctness or choose the mutants for conducting mutation testing. We conducted an empirical study on applying our framework on pointcuts from existing AspectJ programs. The results show that our framework can provide valuable assistance in generating effective mutants that are close to the original pointcuts and are of appropriate strength. |
| @INPROCEEDINGS{AnbalaganX08,
author = {Prasanth Anbalagan and Tao Xie},
title = {Automated Generation of Pointcut Mutants for Testing Pointcuts in AspectJ Programs},
booktitle = {Proceedings of the 19th International Symposium on Software Reliability Engineering (ISSRE'08)},
year = {2008},
address = {Redmond, Washingto},
month = {11-14 November},
pages = {239-248}
} |
3 | Prasanth Anbalagan and Tao Xie Efficient Mutant Generation for Mutation Testing of Pointcuts in Aspect-Oriented Programs Proceedings of the 2nd Workshop on Mutation Analysis (MUTATION'06)Raleigh, North Carolina, November 2006. |
|
| Abstract: Fault-based testing is an approach where the designed test data is used to demonstrate the absence of a set of prespecified faults, typically being frequently occurring faults. Mutation testing is a fault-based testing technique used to inject faults into an existing program, i.e., a variation of the original program and see if the test suite is sensitive enough to detect common faults. Aspect-Oriented Programming (AOP) provides new modularization of software systems by encapsulating crosscutting concerns. AspectJ, a language designed to support AOP uses abstractions like pointcuts, advice, and aspects to achieve AOP's primary functionality. Developers tend to write pointcut expressions with incorrect strength, thereby selecting additional events than intended to or leaving out necessary events. This incorrect strength causes aspects, the set of crosscutting concerns, to fail. Hence there is a need to test the pointcuts for their strength. Mutation testing of pointcuts includes two steps: creating effective mutants (variations) of a pointcut expression and testing these mutants using the designed test data. The number of mutants for a pointcut expression is usually large due to the usage of wildcards. It is tedious to manually identify effective mutants that are of appropriate strength and resemble closely the original pointcut expression. Our framework automatically generates mutants for a pointcut expression and identifies mutants that resemble closely the original expression. Then the developers could use the test data for the woven classes against these mutants to perform mutation testing. |
| @INPROCEEDINGS{AnbalaganX06,
author = {Prasanth Anbalagan and Tao Xie},
title = {Efficient Mutant Generation for Mutation Testing of Pointcuts in Aspect-Oriented Programs},
booktitle = {Proceedings of the 2nd Workshop on Mutation Analysis (MUTATION'06)},
year = {2006},
address = {Raleigh, North Carolina},
month = {November},
pages = {3}
} |