Research Article
Validating UML simulation models with model-level unit tests
@INPROCEEDINGS{10.4108/ICST.SIMUTOOLS2010.8629, author={Isabel Dietrich and Falko Dressler and Winfried Dulz and Reinhard German}, title={Validating UML simulation models with model-level unit tests}, proceedings={3rd International ICST Conference on Simulation Tools and Techniques}, publisher={ICST}, proceedings_a={SIMUTOOLS}, year={2010}, month={5}, keywords={Unit test simulation UML validation}, doi={10.4108/ICST.SIMUTOOLS2010.8629} }
- Isabel Dietrich
Falko Dressler
Winfried Dulz
Reinhard German
Year: 2010
Validating UML simulation models with model-level unit tests
SIMUTOOLS
ICST
DOI: 10.4108/ICST.SIMUTOOLS2010.8629
Abstract
We describe model-level unit tests for model-driven simula- tion based on UML models. We refer to the well-known unit testing method and apply this concept on a higher abstrac- tion level, that is on UML simulation models. The concept of model-based simulation has become more and more popular throughout the last years. This trend is fostered by the avail- ability of tools that automatically transform UML models into executable simulation code. Typically, both functional- ity and behavior are modeled in UML, whereas debugging and validation are mainly an issue of investigating the ex- ecutable code. We contribute to the feld of model-driven simulation by defning a novel testing method. Our method allows to use UML to specify model-level unit tests in order to validate simulation models defned with UML. In addi- tion, we describe the translation, execution and evaluation of these tests within the framework Syntony. In this paper, we show the principles of this method and discuss its use in the scope of our simulation framework Syntony as well as its general applicability. Our implementation allows to com- pile and to execute the test code in combination with the simulation code. In spite of the high abstraction level, the full functionality of unit testing is provided and the modeler can rely on automated test case generation and execution. After execution of the tests, the achieved test coverage is computed as a measure for the test quality.