首页 | 本学科首页   官方微博 | 高级检索  
     

基于多样性SAT求解器和新颖性搜索的软件产品线测试
引用本文:向毅,黄翰,罗川,杨晓伟.基于多样性SAT求解器和新颖性搜索的软件产品线测试[J].软件学报,2024,35(6):2821-2843.
作者姓名:向毅  黄翰  罗川  杨晓伟
作者单位:华南理工大学 软件学院, 广东 广州 510006;北京航空航天大学 软件学院, 北京 100191
基金项目:广东省科技攻关重点项目 (2020B0303300001); 2018–2019年度广东省“新一代人工智能”重大项目(2020AAA0108404); 国家自然科学基金(61906069, 62276103, 62202025, 61876207); 广东省基础与应用基础研究基金(2019A1515011700, 2020A1515010696, 2022A1515011491); 中央高校基本科研业务费专项资金(2020ZYGXZR014); 广东省财税大数据重点实验室开放基金(2022kyc021)
摘    要:软件产品线测试是一项非常具有挑战性的工作. 基于相似性的测试方法通过提升测试集的多样性以达到提高测试覆盖率和缺陷检测率的目的. 因其具有良好的可拓展性和较好的测试效果, 目前已成为软件产品线测试的重要手段之一. 在该测试方法中, 如何产生多样化的测试用例和如何维护测试集的多样性是两个关键问题. 针对以上问题, 提出一种基于多样性可满足性(SAT)求解器和新颖性搜索(novelty search, NS)的软件产品线测试算法. 具体地, 所提算法同时采用两类多样性SAT求解器产生多样化的测试用例. 特别地, 为了改善随机局部搜索SAT求解器的多样性, 提出一种基于概率向量的通用策略产生候选解. 此外, 为同时维护测试集的全局和局部多样性, 设计并运用两种基于NS算法思想的归档策略. 在50个真实软件产品线上的消融和对比实验验证多样性SAT求解器和两种归档策略的有效性, 以及所提算法较其他主流算法的优越性.

关 键 词:软件产品线测试  可满足性求解器  新颖性搜索
收稿时间:2022/7/12 0:00:00
修稿时间:2022/9/19 0:00:00

Software Product Line Testing Based on Diverse SAT Solvers and Novelty Search
XIANG Yi,HUANG Han,LUO Chuan,YANG Xiao-Wei.Software Product Line Testing Based on Diverse SAT Solvers and Novelty Search[J].Journal of Software,2024,35(6):2821-2843.
Authors:XIANG Yi  HUANG Han  LUO Chuan  YANG Xiao-Wei
Affiliation:School of Software Engineering, South China University of Technology, Guangzhou 510006, China;School of Software, Beihang University, Beijing 100191, China
Abstract:Software product line testing is challenging. The similarity-based testing method can improve testing coverage and fault detection rate by increasing the diversity of test suites. Due to its excellent scalability and satisfactory testing effects, the method has become one of the most important test methods for software product lines. How to generate diverse test cases and how to maintain the diversity of test suites are two key issues in this test method. To handle the above issues, this study proposes a software product line test algorithm based on diverse SAT solvers and novelty search (NS). Specifically, the algorithm simultaneously uses two types of diverse SAT solvers to generate diverse test cases. In particular, in order to improve the diversity of stochastic local search SAT solvers, the study proposes a general strategy that is based on a probability vector to generate candidate solutions. Furthermore, two archiving strategies inspired by the idea of the NS algorithm are designed and applied to maintain both the global and local diversity of the test suites. Ablation and comparison experiments on 50 real software product lines verify the effectiveness of both the diverse SAT solvers and the two archiving strategies, as well as the superiority of the proposed algorithm over other state-of-the-art algorithms.
Keywords:software product line testing  satisfiability solver  novelty search
点击此处可从《软件学报》浏览原始摘要信息
点击此处可从《软件学报》下载全文
设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号