kirancodes.me
To Proof Maintenance & Beyond!

Concolic testing for models of state-based systems

Reza Ahmadi, Juergen Dingel

Abstract

Testing models of modern cyber-physical systems is not straightforward due to timing constraints, numerous if not infinite possible behaviors, and complex communications between components. Software testing tools and approaches that can generate test cases to test these systems are therefore important. Many of the existing automatic approaches support testing at the implementation level only. The existing model-level testing tools either treat the model as a black box (e.g., random testing approaches) or have limitations when it comes to generating complex test sequences (e.g., symbolic execution). This paper presents a novel approach and tool support for automatic unit testing of models of real-time embedded systems by conducting concolic testing, a hybrid testing technique based on concrete and symbolic execution. Our technique conducts automatic concolic testing in two phases. In the first phase, model is isolated from its environment, is transformed to a testable model and is integrated with a test harness. In the second phase, the harness tests the model concolically and reports the test execution results. We describe an implementation of our approach in the context of Papyrus-RT, an open source Model Driven Engineering (MDE) tool based on the modeling language UML-RT, and report the results of applying our concolic testing approach to a set of standard benchmark models to validate our approach.

BibTeX
@inproceedings{Ahmadi-Dingel:FSE19,
  author    = {Reza Ahmadi and
               Juergen Dingel},
  title     = {Concolic testing for models of state-based systems},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {4--15},
  publisher = {{ACM}},
  year      = {2019},
}

Related papers