Using Structural Testing to Identify Unintended Join Points Selected by Pointcuts in Aspect-Oriented Programs

Otávio Augusto Lazzarini Lemos, Paulo César Masiero · 2008

The goal of aspect-oriented programming is to modularize concerns that tend to tangle with and scatter across multiple modules of software systems. For that purpose, crosscutting behavior implemented as advice is applied to several points of the base program (i.e., join points) using pointcut mechanisms. However, if pointcuts are wrongly defined, advice can be applied to unintended join points, injecting faults into the system. In this paper we propose the use of an integration structural testing approach to identify these unintended join points caused by faulty pointcuts. We present an AspectJ example that shows evidence of the effectiveness of our approach in this context.

Read the paper · More papers on PaperTik