Axini develops tools for model based testing (MBT) and model based software engineering (MBSE). Model based testing is a software testing approach in which test cases are automatically generated and executed from a model, a formal specification of the system under test. This approach allows for a high degree of test automation and more thorough testing.
As test case generation and execution is fully automated, model based testing generates large amounts of test results. Analyzing these test results remains a manual activity; in case of a failure the expert must conclude whether and how the system under test is incorrect. This can require a significant manual effort.
Like test case generation, we would like to reduce the manual activity in the testing process by having the computer aid in test analysis. For example, by grouping similar failures or finding patterns in failed test cases. This way, the expert can limit his attention to only the relevant results.
Additionally, it might be possible to relate failing test cases to the model itself, allowing the computer to reason what is wrong with the system under test.
Possible research questions
There are several puzzles and research questions that students can work on.
Recent work
Recent work at Axini on this topic:
- Lars Meijer (2020) evaluated the effectiveness of shrinking algorithms such as Delta Debugging minimization on failing test cases derived from Symbolic Transition Systems (STSs).
- Martijn Willemsen (2018) implemented and evaluated a number of different methods for the root cause analysis and grouping test cases.