Scopus İndeksli Yayınlar Koleksiyonu / Scopus Indexed Publications Collection
Permanent URI for this collectionhttps://hdl.handle.net/11147/7148
Browse
Search Results
Article An Information Retrieval-Based Regression Test Selection Technique(Springer International Publishing, 2023) Erşahin, B.; Erşahin, M.Regression testing (RT) is the crucial part of the software testing process. It is applied after a bug fix or a change in the functionality of the codebase. The main goal is to ensure that the modified software has the desired outcome and does not cause adverse effects in other parts of the software. RT may be costly depending on the test’s quantity and complexity. Therefore, regression test selection (RTS) can be introduced to minimize these costs. RTS runs only the test cases related to the modified parts of the software. Currently, various RTS studies focus on compiled languages such as Java, C/C++, and C#, and they mostly rely on direct code dependency between tests and the system under test. In this study, we have introduced a new RTS tool called Smartest to reduce the number of selected integration tests. Former RTS tools were focused mainly on unit tests according to dependencies of modified source files. Smartest is the first RTS tool that works for software written in JavaScript and can select integration tests written in natural language by the quality assurance team. Smartest is tested on three commercial projects and observed that it picks 13% of all test cases on average. Experiments show that Smartest minimizes the selected integration tests on RTS processes, although it does not use file-level code dependency. © The Author(s), under exclusive licence to Springer Nature Switzerland AG 2023.Article Citation - WoS: 3Citation - Scopus: 4Application of the Law of Minimum and Dissimilarity Analysis To Regression Test Case Prioritization(IEEE, 2023) Ufuktepe, Ekincan; Tuğlular, TuğkanRegression testing is one of the most expensive processes in testing. Prioritizing test cases in regression testing is critical for the goal of detecting the faults sooner within a large set of test cases. We propose a test case prioritization (TCP) technique for regression testing called LoM-Score inspired by the Law of Minimum (LoM) from biology. This technique calculates the impact probabilities of methods calculated by change impact analysis with forward slicing and orders test cases according to LoM. However, this ordering doesn't consider the possibility that consecutive test cases may be covering the same methods repeatedly. Thereby, such ordering can delay the time of revealing faults that exist in other methods. To solve this problem, we enhance the LoM-Score TCP technique with an adaptive approach, namely with a dissimilarity-based coordinate analysis approach. The dissimilarity-based coordinate analysis uses Jaccard Similarity for calculating the similarity coefficients between test cases in terms of covered methods and the enhanced technique called Dissimilarity-LoM-Score (Dis-LoM-Score) applies a penalty with respective on the ordered test cases. We performed our case study on 10 open-source Java projects from Defects4J, which is a dataset of real bugs and an infrastructure for controlled experiments provided for software engineering researchers. Then, we hand-seeded multiple mutants generated by Major, which is a mutation testing tool. Then we compared our TCP techniques LoM-Score and Dis-LoM-Score with the four traditional TCP techniques based on their Average Percentage of Faults Detected (APFD) results.
