Model-Based Regression Testing


Sudipto Ghosh, Email: ghosh .At.
Walter Cazzola, Email: cazzola .At.

Current Student: Mohammed Al-refai (Ph.D.)


Models can be used to ease and manage the development, evolution, and runtime adaptation of a software system. When models are adapted, the resulting models must be rigorously tested. Apart from adding new test cases, it is also important to perform regression testing to ensure that the evolution or adaptation did not break existing functionality. Since regression testing is performed with limited resources and under time constraints, regression test selection (RTS) techniques are needed to reduce the cost of regression testing. Applying model-level RTS for model-based evolution and adaptation is more convenient than using code-level RTS because the test selection process happens at the same level of abstraction as that of evolution and adaptation.

We proposed a model-based RTS approach called MaRTS to be used with a fine-grained model-based adaptation framework that targets applications implemented in Java. MaRTS uses UML models consisting of class and activity diagrams. It classifies test cases as obsolete, reusable, or retestable based on changes made to UML class and activity diagrams of the system being adapted.

We are also investigating the use of high-level models to solve the same problem. Such models lack the information needed to build traceability links between the models and the coverage-related execution traces from the code-level test cases. We recently proposed a fuzzy logic based approach named FLiRTS, for UML model-based RTS. We need to further refine the approach and extend it to support test case minimization and prioritization. We will evaluate the algorithm for safety and precision, and demonstrate the reduction in test cases and fault detection effectiveness.



  1. "Supporting Inheritance Hierarchy Changes in Model-based Regression Test Selection", M. Al-refai*, S. Ghosh, and W. Cazzola, accepted to Software and Systems Modeling, Springer, 2017.

  2. "A Fuzzy Logic Based Approach for Model-based Regression Test Selection". M. Al-refai, W. Cazzola, and S. Ghosh, Proceedings of ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems Foundations Track, 2017.

  3. "Model-based Regression Test Selection for Validating Runtime Adaptation of Software Systems", M. Al-refai, S. Ghosh, and W. Cazzola, Proceedings of the 9th IEEE International Conference on Software Testing, Verification, and Validation, Chicago, IL, USA, April 10-15, 2016.

  4. "Using Models to Validate Unanticipated, Fine-Grained Adaptations at Runtime", Mohammed Al-Refai, Walter Cazzola, and Sudipto Ghosh, Proceedings of the 17th IEEE High Assurance Systems Engineering Symposium (HASE 2016), January 7-9, 2016.