Submodel-aware testing

An automatic test tool was developed by the Robotics and Mechatronics group (Jansen, 2019), (Broenink et al., 2020) in 2019. This tool supports all the basic test options but it was necessary to implement more options, specifically to implement submodel-awareness and co-simulation. Submodel-awareness and co-simulation make it easier to test cyber-physical systems. Both the addition of submodel-awareness and co-simulation add value to the test tool. In this research, the test tool and existing testing methods were investigated in order to define the best adaptation such that submodel-awareness could be implemented as efficiently as possible. After analysis, it was determined that step-definitions (inspired by Gherkin (Cucumber, 2019)) were the best option. The step-definitions ensured that the test would be easy to read, simple to understand and it would make the test tool easily expandable. Previously, the addition of submodel-awareness would have taken five steps, with the addition of step-definitions it takes two. The addition of step-definitions also improves human readability and usability, as the test was sometimes hard to understand.

Additionally, to support co-simulation, the framework CoHLA (Configuring High Level architecture) is implemented in the test tool. After some research, it was concluded that the test tool needed a code-adjustment to make it easier to add frameworks or simulators in the future. After this adjustment, the number of steps necessary for adding a simulator is reduced from four to one.

The test tool now supports CoHLA, and thus co-simulation. It has also been extended to support step-definitions, which makes submodel-aware testing possible. The stepdefinitions also make it easier to expand the test tool with new functionalities.
Improvements for the future include the addition of (error-) messages to the console and the expansion of the results. This last improvement allows for the result to contain graphs, tables, and differences between the expected and the actual results.

BlueJeans videoconference join information:

Meeting URL
https://bluejeans.com/865471599?src=join_info

Meeting ID
865 471 599

Want to dial in from a phone?

Dial one of the following numbers:
+31.20.808.2256 (Netherlands (Amsterdam))
(see all numbers - https://www.bluejeans.com/numbers)

Enter the meeting ID and passcode followed by #