| 摘要: |
| 基于进化优化的消息传递接口(message-passing interface, MPI)程序路径覆盖测试中, 进化个体适应值的评价需要反复执行MPI程序, 而程序的重复执行往往需要高昂的计算成本. 鉴于此, 提出一种代理辅助多任务进化优化引导的MPI程序路径覆盖测试用例生成方法, 该方法能够显著约减MPI程序的实际执行次数, 进而提高测试效率. 首先, 面向MPI程序目标路径内每条目标子路径, 训练相应的代理模型; 然后, 基于对应每条目标子路径的代理模型, 估计相应测试用例生成优化任务中进化个体的适应值, 并形成候选测试用例集; 最后, 基于候选测试用例集及其面向每条目标子路径的真实适应值, 更新对应每条目标子路径的代理模型. 将所提方法应用于7个基准MPI程序的基本路径覆盖测试中, 并与其他若干先进方法比较. 实验结果表明, 所提方法能够在确保测试用例生成高有效性的前提下, 显著提高测试效率. |
| 关键词: 路径覆盖测试用例生成 代理辅助多任务进化优化 候选测试用例集 |
| DOI:10.13328/j.cnki.jos.007204 |
| 分类号:TP311 |
| 基金项目:国家自然科学基金 (62302502); 中国博士后科学基金(2022M713368); 江苏省卓越博士后计划(2022ZB528); 中央高校基本科研业务费专项资金(2023QN1073) |
|
| Test Case Generation for Path Coverage of MPI Program Guided by Surrogate-assisted Multi-task Evolutionary Optimization |
|
SUN Bai-Cai1,2, GONG Dun-Wei3, YAO Xiang-Juan2
|
|
1.School of Information and Control Engineering, China University of Mining and Technology, Xuzhou 221116, China;2.School of Mathematics, China University of Mining and Technology, Xuzhou 221116, China;3.School of Information Science and Technology, Qingdao University of Science and Technology, Qingdao 266061, China
|
| Abstract: |
| During the path coverage testing of a message passing interface (MPI) program based on evolutionary optimization, the fitness of evolutionary individuals needs to be evaluated by repeatedly executing the MPI program. However, repeated execution of an MPI program often requires high computational costs. Therefore, this study proposes an approach to generate test cases for path coverage of MPI programs guided by surrogate-assisted multi-task evolutionary optimization, which significantly reduces the actual execution times of MPI programs, thereby improving testing efficiency. Firstly, surrogate models are trained for each target sub-path in the target path of an MPI program. Then, the fitness of evolutionary individuals is estimated using the surrogate model corresponding to each target sub-path, and a candidate set of test cases is formed. Finally, all surrogate models are updated based on the candidate set and the actual fitness for each target sub-path. The proposed approach is applied to the basis path coverage testing of seven benchmark MPI programs and compared with several state-of-the-art approaches. The experimental results show that the proposed approach significantly improves testing efficiency while ensuring high effectiveness in generating test cases. |
| Key words: test case generation for path coverage surrogate-assisted multi-task evolutionary optimization candidate set of test case |