Multifactor approach to prioritize event sequence test cases - Ahmad, Johanna (2018)
Software testing consumes 40 to 70 percent of the development effort, time, and cost, especially for large software systems. Test Case Prioritization (TCP) is a method to prioritize and schedule test cases in order to run test cases of higher priority to minimize time, cost, and effort during the software testing phase. Numerous TCP techniques have been proposed with a variety of criteria and evaluation metrics. However, in the context of prioritizing the event sequences test cases, most researchers agree that testing the event sequences test cases is more complex than the single event test cases. Meanwhile, one of the most significant issues in TCP is how researchers handle the same priority value issues. Most researchers either applied the random technique or did not provide any information regarding the same priority value issues in their research. Due to that reason, this research proposed Multifactor Weighted Approach (MFWA) using six factors: complexity, redundancy, frequency, permutations, fault matrix, and distance to improve the existing TCP technique that used random technique to break the ties once the same priority value exists during the prioritization process. The aim of this research is to combine all six factors to produce a unique weight for each test case. The ordered suite will be based on the final test case weight. The test case that has the highest weight will be executed first compared to the others. The mutation testing approach is selected to compare and evaluate the random technique and MFWA technique. Both techniques will execute the same test suites and codes. The effectiveness of both techniques is measured in terms of the capability to detect faults using the Average Percentage Faults Detected (APFD). Meanwhile, the efficiency refers to how quickly each technique is capable of detecting faults by referring to the position of the test case that managed to kill all the live mutants. The Jaccard Distance approach was managed to solve same priority value by measuring the similarities of the data state value among test cases. The new ordering of test case after the implementation of Jaccard Distance approach has been proof can detect faults earlier than others based on the Fault Detection table. In fact, the empirical results indicated that the MFWA technique is more effective and efficient than the random technique.