OCL-based test case prioritisation using AgileUML

Research output: Chapter in Book/Report/Conference proceedingConference paperpeer-review

1 Citation (Scopus)

Abstract

Test Case Prioritisation (TCP) aims to enhance fault detection ability by re-ordering test cases for execution. TCP techniques have been widely studied in the software engineering literature for decades. However, we found a lack of research applicable to the specification of systems expressed in the Object Constraint Language (OCL). OCL is a declarative language that can model the corresponding software systems. Performing TCP at the specification level is a promising practice. It enables the TCP process to be performed once, and the results can be used for all implementation of specifications in different programming languages or platforms. Inspired by the searching ability of the Genetic Algorithm (GA), we apply GA to perform the TCP process for OCL specifications in this work. We use the AgileUML tool to support the prioritisation process. In particular, this tool can generate test cases and mutations from the original OCL specification directly. We have performed three case studies upon real-world OCL specifications to assess our idea. The evaluation results show that the system defects can be detected more effectively by the prioritised test suite, also with a reasonable overhead.
Original languageEnglish
Title of host publicationMODELS '22: Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings
Pages607-611
Number of pages5
Publication statusPublished - Oct 2022

Fingerprint

Dive into the research topics of 'OCL-based test case prioritisation using AgileUML'. Together they form a unique fingerprint.

Cite this