Grants and Contributions:
Grant or Award spanning more than one fiscal year. (2017-2018 to 2022-2023)
The proposed research focuses on a model-based testing from Finite State Machine (FSM) and Input/Output Transition System (IOTS) models, including their extensions. It advocates fault model-based testing, which draws constantly growing interests of both, researchers and test practitioners. One of the reasons for this is the fact that the program/specification coverage does not provide any guarantee for fault detection. The dictum of Dijkstra could be mentioned here: testing can be used to show the presence of bugs, but never to show their absence. The proposed research is aimed at finding an answer to the question: can testing at least guarantee that no faults of certain types are left? The challenge then is how faults should be modeled. We define a fault model as a tuple of a specification, fault domain, and conformance relation. A fault domain as a set of all possible submachines of a given nondeterministic machine, called a mutation machine of a given specification machine. The mutation machine contains the specification and extends it with a number of mutated transitions modelling potential faults. In our recent work, we developed an approach for test generation which is based on logical encoding and SMT-solving. Considering this approach as a starting point, we plan to investigate a general fault model-based testing framework to deal with a variety of state-oriented models, from classical FSM and IOTS models to their symbolic extensions reaching the level of extensions found in state-oriented models used in model-driven development of critical applications, such as Simulink Stateflow and UML state machines as well as activity and sequence diagrams. The goal of this project is to develop scalable testing approaches (supported by prototype tools) for developing tests with a coverage guarantee for fault models chosen by the domain experts based on the history of a product development, company’s specifics and their test assumptions.