The RT-Tester Model Based Test Case and Test Data Generator (RTT-MBT) supports model-based testing (MBT), that is, automated generation of test cases, test data, and test procedures from UML/SysML models. Moreover, it generates traceability data relating requirements, test cases, test procedures, and results.
Defining a test model
Starting from a UML/SysML description of the behavior of a system under test, RTT-MBT can derive the expected behavior of the system and how it reacts to inputs from a test environment. These test models can be specified in different UML/SysML tools and exported to RTT-MBT in XMI format.
Currently, the RT-Tester Model Based Testing can import data from any of the following UML/SysML modeling tools:
Automated Test Case and Test Data Generation
Depending on the criticality of the system under test, RTT-MBT offers a variety of strategies to identify relevant test cases. For those identified test cases, input test data can be generated automatically. This test data contains input traces and corresponding timing information than – when sent to the system under test – will drive the internal properties of the SUT towards a state, from where the identified test cases can be checked. This checking can be done by automatically generated test oracles, which can validate the observed system behavior against the expected behavior that was derived from the original test model.
Automated Test Procedure Generation
Once the individual test cases are identified, which need to be covered for achieving a test goal, RTT-MBT can automatically generate test procedures by combining multiple test cases into a single test procedure. The test developer guides the procedure generator by selecting which test cases should be covered, and RTT-MBT finds traces of input and outputs of the system under test that must be stimulated and observed to cover the given set of test cases.
RTT-MBT automatically generates RT-Tester test procedures, which can be executed immediately against the system under test. During the test execution the inputs of the system under test are stimulated to drive its internal state to fulfill the pre-conditions of a test case. The outputs of the system under test are automatically validated against the expected behavior from the test model.
The integrated replay capability of the system, takes the automatically produced test logs of the RT-Tester test procedure and executes the inputs sent by the test environment and outputs of the system under test against the test model. This step allows for identifying all test cases that were covered and tested by a given test trace, and validates the results of the test procedure by ensuring that the generated RT-Tester test procedures indeed matches the modeled behavior of the system under test.
Integrated Requirements Tracing
The test models may (and should) not only specify the expected system behavior, but also provide additional information about the system requirements that have been addressed by a specific part of the model. RTT-MBT supports requirement annotations directly at states and transitions in the test model. If certain requirements cannot be expressed directly by covering a specific state or transition, RTT-MBT also allows for specifying more complex expressions about sequences of covered states or transitions and internal state variables.
Once this information is embedded into the test model, RTT-MBT can utilize this data to generate test cases, which are designed to specifically cover a given requirement. The integrated requirements tracing capability of RT-Tester will be used to allow for detailed tracing which requirement is tested in which test procedure, and how the overall test verdict for the requirement is. Each requirement can be decomposed into multiple test cases and once all those test cases have been tested successfully, a requirement can be considered as successfully tested.
Tool qualification records according to the requirements of ISO 26262, RTCS-DO178B/C, and EN50128:2011 can be provided on request.
RT-Tester Model Based Testing is currently available as customer technology preview. For specific questions regarding availability and pricing, please contact email@example.com.