改进和声搜索算法生成组合测试用例策略研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
改进和声搜索算法生成组合测试用例策略研究组合测试方法能够在确保检错能力的前提下,使用较小规模的测试用例集对系统中由于复杂因素间的相互作用而导致的软件故障进行检测。
但是,测试用例集的构造是个NP完全问题。
现有的方法多基于贪心算法或者启发式算法生成组合测试用例,并通过对这些算法的改进以改善测试用例的生成效率和测试用例集的规模。
在实际项目中,待测的软件系统通常由多个复杂的因素相互交集和约束组合而成,因此,常规的组合测试方法也面临着挑战。
为了使用较少规模的测试用例集对系统参数间的交互作用进行全面地测试,研究者提出了可变强度的t-way组合测试方法。
作为一种科学、有效的测试方法,可变强度的t-way组合测试技术成为了学者研究的关键问题之一。
本文系统回顾和总结了现有的组合测试用例生成技术,针对组合测试模型中参数的约束和可变力度的交互问题进行了深入研究,提出了两种基于和声搜索算法(Harmony Search Algorithm,HSA)改进的组合测试用例集构造策略。
具体贡献可以概括为以下三个方面:(1)通过对和声搜索算法中初始和声库的生成方式进行改进,提出了多和声库竞争的和声搜索算法(Multi-HM Competitive Harmony Search Algorithm,MHCHS)生成组合测试用例策略。
在标准的HSA中新解的生成直接受初始和声库(Harmony Memory,HM)的影响。
本文采用多个小规模HM代替一个大规模的HM进行独立更新,并受自然界中种群间相互合作与竞争达到共同发展的思想启发,将较优的新解更新到多个小规模和声库中进一步改善HM中解的质量来增强算法的寻优能力。
最后详细分析了算法中参数初始值设定对生成组合测试用例集规模的影响,得出该配置下最好的参数值选择。
(2)通过对和声搜索算法中参数的自适应调整,提出了带灾变的蝙蝠-和声搜索算法(Catastrophe Strategy Bat-Harmony Search Algorithm,CSBHS)生成组合测试用例策略。
标准HSA中的HMCR和PAR决定了新解产生的方式。
本文将同是基于“声音”的物理模型下的蝙蝠算法与和声算法结合起来,模拟蝙蝠发送超声波寻找猎物过程就是和声算法中寻找最优解的过程。
通过发出声波的速率和发出声波的响度的物理规律自适应调整HSA中的参数HMCR和PAR,并结合算法的实用性引入灾变策略,防止算法陷入局部而不能寻找到较优解的问题。
同样,详细分析了算法中参数
初始值的设定对算法生成测试用例规模的影响,并分析了灾变策略引入的有效性,得出该配置下最好的参数值选择;(3)将分析得出的最好参数取值带入MHCHS策略和CSBHS策略中,并和已有的基于智能优化算法的组合测试用例生成策略作比较,分析两种改进和声搜索算法的实验结果。
通过实验表明,本文设计的两种改进和声搜索算法在不同的配置下需要选定合适的参数初始值帮助最优解的生成;MHCHS和CSBHS策略在处理可变力度交互和带有约束的组合测试用例生成上比标准HSA策略更有竞争力,其中,CSBHS策略中灾变策略的引入改善了最终测试用例集的规模。