基于双种群遗传算法的测试用例优先级排序
首发时间:2023-03-13
摘要:在软件全生命周期的任何一个阶段,只要软件发生了修改和迭代,回归测试都会被触发,以确保新的更改不会妨碍未更改的部分的行为。测试用例优先级排序是提高回归测试效率的技术之一,基于搜索的算法可以提高排序的效率和有效性。在基于搜索的测试用例优先级排序算法中,遗传算法受到研究人员的广泛关注,但传统遗传算法存在种群缺乏多样性而过早收敛和和进化后期收敛速度慢的问题。因此,本文将双种群遗传算法引入测试用例排序中解决过早收敛问题,使用Boltmann选择法实现自适应选择压力来解决后期收敛速度慢的问题,同时在适应度函数中使用考虑方法重要性程度的改进覆盖率算法来指导搜索过程。最后在具有真实故障的数据集Defects4j上进行对比验证,结果表明,本文算法在平均故障检测率(APFD)方面优于传统遗传算法。
关键词: 计算机软件 测试用例优先级排序 双种群遗传算法 自适应选择压力
For information in English, please click here
Test Case Prioritizatio Based on Dual Population Genetic Algorithm
Abstract:At any stage of the software life cycle, as long as the software is modified and iterated, regression testing will be triggered to ensure that new changes will not hinder the behavior of unchanged parts. Prioritization of test cases is one of the techniques to improve the efficiency of regression testing, and search-based algorithms can improve the efficiency and effectiveness of sorting. Among the search-based prioritization algorithms for test cases, genetic algorithms have received extensive attention from researchers, but traditional genetic algorithms have the problems of premature convergence due to lack of diversity in the population and slow convergence in the later stages of evolution. Therefore, this paper introduces the dual population genetic algorithm into the test case sorting to solve the premature convergence problem, and uses the Boltmann selection method to realize the adaptive selection pressure to solve the problem of slow convergence in the later stage. Improved coverage algorithms to guide the search process. Finally, a comparative verification is carried out on the dataset Defects4j with real faults. The results show that the algorithm in this paper is superior to the traditional genetic algorithm in terms of average fault detection rate (APFD).
Keywords: computer software test case prioritization dual population genetic algorithm adaptive selection pressure
引用
No.****
动态公开评议
共计0人参与
勘误表
基于双种群遗传算法的测试用例优先级排序
评论
全部评论