Back to research topics

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.

Formal analysis of test results
How should we systematically interpret model based testing results, preferably based on a mathematical foundation?
Automatic diagnosis
How can we automate analysis of test results to diagnose the system under test?
Test case shrinking
Can we reduce/shrink test cases via techniques like Delta debugging?
Test case classification
Can we group/classify failing test cases using pattern recognition or AI techniques?

Recent work

Recent work at Axini on this topic: