Aspects-classes integration testing strategy: an incremental approach

  • Authors:
  • Philippe Massicotte;Linda Badri;Mourad Badri

  • Affiliations:
  • Software Engineering Laboratory, Department of Mathematics and Computer Science, University of Quebec at Trois-Rivières, Trois-Rivières, Québec, Canada;Software Engineering Laboratory, Department of Mathematics and Computer Science, University of Quebec at Trois-Rivières, Trois-Rivières, Québec, Canada;Software Engineering Laboratory, Department of Mathematics and Computer Science, University of Quebec at Trois-Rivières, Trois-Rivières, Québec, Canada

  • Venue:
  • RISE'05 Proceedings of the Second international conference on Rapid Integration of Software Engineering Techniques
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Aspect-Oriented Programming is an emerging software engineering paradigm. It provides new constructs and tools improving separation of crosscutting concerns into single units called aspects. In fact, existing object-oriented programming languages suffer from a serious limitation in modularizing adequately crosscutting concerns. Many concerns crosscut several classes in an object-oriented system. However, new dependencies between aspects and classes result in new testing challenges. Interactions between aspects and classes are new sources for program faults. Existing object-oriented testing methods (unit and integration testing) are not well adapted to the aspect technology. Thus, new testing techniques must be developed for aspect-oriented software. We present, in this paper, a new aspects-classes integration testing strategy. The adopted approach consists of two main phases: (1) static analysis: generating test sequences based on the dynamic interactions between aspects and classes, (2) dynamic analysis: verifying the execution of the selected sequences. We focus, in particular, on the integration of one or more aspects in the control of collaborating classes.