Vidock: A Tool for Impact Analysis of Aspect Weaving on Test Cases
Abstract
The addition of a cross-cutting concern in a
program, through aspect weaving, has an impact on its existing
behaviors. If test cases exist for the program, it is necessary to
identify the subset of test cases that trigger the behavior impacted by
the aspect. This subset serve to check that interactions between aspects
and the base program do not introduce some unexpected behavior. Vidock
performs a static analysis when aspects are compiled with a program to
select the test cases impacted by the aspects. It leverages the pointcut
descriptor to locate the set of methods impacted by aspects and then
selects the test cases that can reach an impacted method. This static
analysis has to perform over-approximations when the actual point where
the aspect is executed can be computed only at runtime and when test
cases call polymorphic objects. We measure the occurrence of these
assumptions in 4986 projects containing 498 aspects to show they have a
limited impact. Then, we run experiments with Vidock on 5 cases studies
and analyze the impacts that different types of aspects can have on test
cases.
Domains
Digital Libraries [cs.DL]Origin | Files produced by the author(s) |
---|
Loading...