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.
Subject
Mechanical Engineering,Instrumentation,Materials Science (miscellaneous)
Reference28 articles.
1. V. Alizadeh, M. Kessentini, and M. Mkaouer, “An interactive and dynamic search-based approach to software refactoring recommendations,” IEEE Transactions on Software Engineering, Vol. 46, No. 9, pp. 932–961, 2018.
2. A. Lekova, P. Tsvetkova, T. Tanev, P. Mitrouchev, and S. Kostova, “Making humanoid robots teaching assistants by using natural language processing (NLP) cloud-based services,” Journal of Mechatronics and Artificial Intelligence in Engineering, Vol. 3, No. 1, pp. 30–39, Jun. 2022, https://doi.org/10.21595/jmai.2022.22720
3. Haoxiang Shi, Wu Liu, Jingyu Liu, J. Ai, and Chunhui Yang, “A software defect location method based on static analysis results,” 9th International Conference on Dependable Systems and Their Applications (DSA), Vol. 14, pp. 876–886, 2022.
4. O. Banias, “Test case selection-prioritization approach based on memoization dynamic programming algorithm,” Information and Software Technology, Vol. 115, pp. 119–130, Nov. 2019, https://doi.org/10.1016/j.infsof.2019.06.001
5. M. Iyyappan et al., “A component selection framework of cohesion and coupling metrics,” Computer Systems Science and Engineering, Vol. 44, No. 1, pp. 351–365, 2022.