Aspect Language Features for Concern Coverage Profiling

By: Hridesh Rajan and Kevin J. Sullivan

PDF Download Download Paper

Abstract

In program profiling to assess test set adequacy, a challenge is to select code to be included in the assessment. Current mechanisms are coarse-grained; biased to dominant modularizations; require tedious, error-prone manual selection; and leave tester intent implicit in inputs to testing tools. Aspect-oriented constructs promise to improving testing in two ways: by improving our ability to select the code to include in adequacy criteria, and by documenting selection intentions in declarative form in the code itself. One problem is that current join point models do not reveal program behavior in enough detail to support white-box coverage analysis. Our contribution is the formulation, prototyping, and evaluation of a language-and-tool-based approach to white-box coverage adequacy analysis that we call concern coverage. We develop and evaluate one instance of the general idea in which branches, in particular, are exposed as join points to support branch coverage analysis of crosscutting concerns. Our results are consistent with the claim that the idea has the potential to improve test coverage analysis.

ACM Reference

Rajan, H. and Sullivan, K.J. 2005. Aspect Language Features for Concern Coverage Profiling. Proceedings of the 4th International Conference on Aspect-Oriented Software Development, AOSD, Chicago, Illinois, USA (2005), 181–191.

BibTeX Reference

@inproceedings{RajanSullivan2005a,
  author = {Hridesh Rajan and Kevin J. Sullivan},
  title = {Aspect Language Features for Concern Coverage Profiling},
  booktitle = {Proceedings of the 4th International Conference on Aspect-Oriented Software Development, AOSD, Chicago, Illinois, USA},
  pages = {181--191},
  year = {2005},
  publisher = {{ACM}},
  editor = {Mira Mezini and Peri L. Tarr},
  doi = {10.1145/1052898.1052914},
  abstract = {
  In program profiling to assess test set adequacy, a challenge is to select
  code to be included in the assessment. Current mechanisms are coarse-grained;
  biased to dominant modularizations; require tedious, error-prone manual
  selection; and leave tester intent implicit in inputs to testing tools.
  Aspect-oriented constructs promise to improving testing in two ways: by
  improving our ability to select the code to include in adequacy criteria, and
  by documenting selection intentions in declarative form in the code itself.
  One problem is that current join point models do not reveal program behavior
  in enough detail to support white-box coverage analysis. Our contribution is
  the formulation, prototyping, and evaluation of a language-and-tool-based
  approach to white-box coverage adequacy analysis that we call concern
  coverage. We develop and evaluate one instance of the general idea in which
  branches, in particular, are exposed as join points to support branch coverage
  analysis of crosscutting concerns. Our results are consistent with the claim
  that the idea has the potential to improve test coverage analysis.},
}