Title :
Prioritizing State-Based Aspect Tests
Author :
Dianxiang Xu ; Ding, Junhua
Author_Institution :
Nat. Center for the Protection of the Financial Infrastruct., Dakota State Univ., Madison, SD, USA
Abstract :
In aspect-oriented programming, aspects are essentially incremental modifications to their base classes. Therefore aspect-oriented programs can be tested in an incremental fashion - we can first test the base classes and then test the base classes and aspects as a whole. This paper demonstrates that, in this incremental testing paradigm, we can prioritize aspect tests so as to report failure earlier. We explore test prioritization for testing aspect-oriented programs against their state models with transition coverage and round-trip coverage. Aspect tests are generated from woven state models obtained by composing aspect models into their base class models. We prioritize aspect tests by identifying the extent to which an aspect modifies its base classes. The modification is measured by the number of new and changed components in state transitions (start state, event, precondition, postcondition, end state). Transitions with more changes have higher priorities for test generation. We evaluate the impact of aspect test prioritization through mutation analysis of two AspectJ programs, where all aspects and their base classes can be modeled by finite state machines. We create aspect mutants of each AspectJ program according to a comprehensive AspectJ fault model. Then we test each mutant with the test suites generated without prioritization and with prioritization, respectively. Our experiment results show that prioritization of aspect tests has accelerated failure report.
Keywords :
aspect-oriented programming; fault tolerant computing; finite state machines; program testing; AspectJ fault model; AspectJ program; aspect oriented programming; aspect test prioritization; finite state machine; incremental testing paradigm; mutation analysis; state based aspect test; Automata; Computer science; Genetic mutations; Life estimation; Object oriented modeling; Protection; Quality assurance; Software testing; aspect-oriented programming; finite state machine; model-based testing; software testing; test prioritization;
Conference_Titel :
Software Testing, Verification and Validation (ICST), 2010 Third International Conference on
Conference_Location :
Paris
Print_ISBN :
978-1-4244-6435-7
DOI :
10.1109/ICST.2010.14