Test case prioritization based on MCCM complexity for event sequence test cases

Complexity can affect the error proneness of software systems. This issue has led researchers to conclude that complex areas of code should receive more attention during the testing phase and sought out using complexity metrics in Test Case Prioritization (TCP). TCP is used to schedule the execution...

Full description

Saved in:
Bibliographic Details
Main Authors: Ridwan Monjour, Ridwan Monjour, Ahmad, Johanna, Abdul Wahab, Nur Haliza, Goh, Eg Su, Ismail, Siti Zubaidah
Format: Conference or Workshop Item
Published: 2023
Subjects:
Online Access:http://eprints.utm.my/108300/
http://dx.doi.org/10.1063/5.0164488
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Complexity can affect the error proneness of software systems. This issue has led researchers to conclude that complex areas of code should receive more attention during the testing phase and sought out using complexity metrics in Test Case Prioritization (TCP). TCP is used to schedule the execution order of test cases to improve the effectiveness of the testing phase. Nowadays, the TCP technique is widely used, especially for testing event sequences in modern day programs, as it is unfeasible to test all events from a large number of events. The Unique Complexity Metric (UCM), which is a unified measure of procedural complexity, has been used to prioritize test cases based on complexity. However, UCM does not take into account the object-oriented nature of modern-day programs. Therefore, this research has compared the UCM metric with the Modified Cognitive Complexity Metric (MCCM), as the MCCM provides a more complete measure of complexity for OOP-based modern programs. Based on the two chosen programs and test suites used in this research, the TCP of the test cases was found to be more effective with the MCCM metric than with the UCM metric. The Average Percentage of Fault Detected (APFD) of the TCP by the MCCM metric has a higher value, thus, validating its hypothesized usefulness in OOP-based programs.