Model based testing with machine learning techniques

This project aims to assess the application of active and passive machine learning techniques for testing complex software systems.

We are interested in a variety of topics in the applications of intelligent methods (e.g., machine learning and search algorithms) for engineering complex software systems. Example of these topics include:

  • Using model execution and machine learning techniques (e.g., reinforcement learning) to cost-effectively test Cyber-Physical Systems (CPSs) or IoT in the presence of environmental uncertainty.
  • Testing machine learning algorithms in software systems such as embedded in autonomous vehicles.
  • Testing security and privacy of critical infrastructures, e.g., used in oil & gas, healthcare welfare technologies, and cancer registry system.


Developing software testing tools for the above topics. There is a possibility to apply the tools to the real case studies.

Learning outcome:

  • Software Testing
  • Machine Learning (e.g., active and passive learning)
  • Search Algorithms (e.g., Genetic Algorithms)
  • Model-based Testing


  • Shaukat Ali
  • Tao Yue