{"title":"Test case simplification based on coupling metrics in software bug location","authors":"Xiaohui Hu","doi":"10.21595/jme.2023.23133","DOIUrl":null,"url":null,"abstract":"Software test cases are one of the most critical aspects of software testing in the product development process. As software products are updated several times, the same test requirement may be covered by multiple test cases, so this aspect is often redundant, yet the approximate test case set has an impact on its error detection rate. This study proposes the idea of using redundant test cases in software error location, introduces a coupling metric, analyses its program slicing and establishes a second coverage criterion in order to balance the relationship between the reduced test suite and the false detection rate the test case set. The results show that the size of test set and the number of error detection by the Ruby On Rails (ROR) method used in this study are larger than those of other commonly used reduction algorithms. The test suite has the lowest error detection loss rate, with an average of 17.96 % across the six test case sets. The highest error detection capability of individual test cases was found in the reduced test set, with a mean value of 90.63 % in the test set. The method also has the highest average reduction efficiency of 91.05 %. Compared with other simplification methods, the research method has a better balance between the size and false detection rate of the reduced test suite and the advantages of simplification.","PeriodicalId":42196,"journal":{"name":"Journal of Measurements in Engineering","volume":" ","pages":""},"PeriodicalIF":0.6000,"publicationDate":"2023-06-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Measurements in Engineering","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.21595/jme.2023.23133","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"ENGINEERING, MECHANICAL","Score":null,"Total":0}
引用次数: 0
Abstract
Software test cases are one of the most critical aspects of software testing in the product development process. As software products are updated several times, the same test requirement may be covered by multiple test cases, so this aspect is often redundant, yet the approximate test case set has an impact on its error detection rate. This study proposes the idea of using redundant test cases in software error location, introduces a coupling metric, analyses its program slicing and establishes a second coverage criterion in order to balance the relationship between the reduced test suite and the false detection rate the test case set. The results show that the size of test set and the number of error detection by the Ruby On Rails (ROR) method used in this study are larger than those of other commonly used reduction algorithms. The test suite has the lowest error detection loss rate, with an average of 17.96 % across the six test case sets. The highest error detection capability of individual test cases was found in the reduced test set, with a mean value of 90.63 % in the test set. The method also has the highest average reduction efficiency of 91.05 %. Compared with other simplification methods, the research method has a better balance between the size and false detection rate of the reduced test suite and the advantages of simplification.
软件测试用例是产品开发过程中软件测试最关键的方面之一。由于软件产品经过多次更新,同一测试需求可能会被多个测试用例覆盖,因此这一方面通常是冗余的,但近似的测试用例集会影响其错误检测率。本研究提出了在软件错误定位中使用冗余测试用例的想法,引入了一种耦合度量,分析了其程序切片,并建立了第二个覆盖标准,以平衡缩减测试套件与测试用例集的错误检测率之间的关系。结果表明,本研究中使用的Ruby On Rails(ROR)方法的测试集大小和错误检测次数都大于其他常用的约简算法。该测试套件的错误检测丢失率最低,在六个测试用例集中平均为17.96%。在简化的测试集中,单个测试用例的错误检测能力最高,测试集中的平均值为90.63%。该方法的平均约简效率也最高,为91.05%。与其他简化方法相比,该研究方法在精简测试集的大小和误报率以及简化的优势之间取得了更好的平衡。