Coverage Simulator

Home

Idea



hosted by SourceForge.net Logo

The Idea ...

Known Theory


In most cases, testing cannot be complete, i.e. there is not enough money nor enough time to conduct all possible test cases. Heuristic means of quality measurement are applied instead. Coverage criteria are such means. They are applied to the system under test and to test models. Well known coverage criteria are, e.g. All-Transitions, Decision Coverage, or Modified Condition/Decision Coverage (MC/DC). Coverage criteria are related by subsumption: MC/DC subsumes Decision Coverage, i.e. each test suite that satisfies MC/DC also satisfies Decision Coverage. Subsuming coverage criteria are considered stronger than the subsumed coverage criteria.

Issues


There are many commercial model-based test generators that support only a limited set of weak coverage criteria (according to subsumption). The more coverage criteria are supported by such a tool, there more expensive it is usually. Furthermore, after buying a model-based test generation tool, the user is restricted to the provided set of coverage criteria. It is not possible (or at least very expensive) to add unsupported coverage criteria. Under the given circumstances, the acquisition of a new model-based test generation tool is no good choice.

Solution


The Coverage Simulator provides a solution to such problems: It transforms a given test model so that the satisfaction of a supported coverage criterion on the transformed test model implies the satisfaction of an unsupported coverage criterion on the original test model. Thus, the Coverage Simulator is to be used in a preprocessing step to transform the test model. Afterwards, any existing model-based test generation tool is applied to the transformed test model. The usage of the Coverage Simulator allows to satisfy coverage criteria that are unsupported by the applied test generator.

Technical Details


In the first iteration, we plan to support UML state machines. The Coverage Simulator will be an Eclipse plug-in and supports state machine transformations for the EMF-based UML2.1-plugins. The first prototype is still under construction ...