基于失效聚集度改进自适应随机测试算法.docVIP

基于失效聚集度改进自适应随机测试算法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于失效聚集度改进自适应随机测试算法.doc

基于失效聚集度改进自适应随机测试算法   摘要:对于现有的自适应随机测试(ART)算法针对点状失效模式普遍存在有效性和效率均比随机测试(RT)差的问题,提出一种基于失效聚集度的自适应随机测试(CLART)算法,对传统的ART――固定候选集(FSCS)、区域排除随机测试(RRT)等算法进行改进。首先,根据被测程序的输入域估计主失效聚集度,确定局部搜索区域;然后,在区域内使用传统ART算法生成若干测试用例(TC)进行测试;若未发现错误,重新选择局部区域生成TC;重复这一过程直至发现错误。仿真实验显示在点状失效模式和块状失效模式下CLART算法的有效性比FSCS算法提高约20%,效率比FSCS算法提高约60%。实验结果表明CLART算法利用多个局部区域依次搜索可以快速锁定引发失效输入分布密集高的失效区域,从而提高测试的有效性和效率。   关键词:软件测试;随机测试;自适应随机测试   中图分类号:TP311.5 文献标志码:A   0引言   在测试用例生成的策略中,随机测试(Random Testing, RT)[1-2]是有潜力的测试策略之一。由于RT不会涉及到复杂的软件需求或软件的内部结构信息,只需在输入域内随机地选择测试用例,具有简单、易于实现、成本低等优点,因而被广泛应用于各个领域的软件测试和可靠性评估中。   但是,由于其测试数据生成的盲目性、冗余性和不确定性等特点导致覆盖率无法保证,查错率不高,因此一些研究者提出了很多改进的策略。   Hamle[1]据经验得出,引发失效的输入往往形成连续的失效区域,不能引发失效的输入也应该形成一个连续的非失效区域。当某测试用例(Testing Case, TC)不能引发软件失效时,其周围的测试用例能引发软件失效的概率也比较低,因此应该让测试用例尽可能均匀地分散于整个输入域内[2-3]。基于该思想,Chen等[4]提出了一种改进的随机测试方法――自适应随机测试(Adaptive Random Testing, ART)。   随之,ART的改进算法相继被提出,本文将其归纳为:基于距离的适应性随机测试[4]、基于排除的随机测试[5-6]、基于测试剖面的随机测试[7]和基于划分的随机测试[8]等。其中:固定候选集ART(Fixed Sized Candidate SetART, FSCSART)是基于距离的适应性随机测试最具有代表性的算法之一,区域排除RT(Restricted RT, RRT)是基于排除思想的自适应随机测试的经典算法之一。ART算法使TC更加均匀分布,实验显示在块状模式下其有效性比RT提高了40%~50%,这几乎接近了中心极限定理的极限值[9]。   然而,ART算法在生成下一个测试用例时需要考虑以前所有已执行的TC,随着已执行TC数量的增多、维度的增高,其计算开销急剧增加。因此,ART算法的效率远不如RT[4-6]。   随之对ART效率改进的算法也相继被提出,如:镜像ART(Mirror ART, MART)[10]、遗忘ART(Forgetting ART, FART)[11]、基于均等划分的自适应随机测试[12]、基于动态分割的镜像自适应随机测试[13] 等。此类算法虽然在一定程度上改善了算法的效率,但是有效性却有所降低。   另外,随着输入域内失效块数的增多,此类算法的有效性也越来越差,特别是当每个失效区域的尺寸均等时有效性下降得最为明显[14]。   在此情况下,本文对点状模式和块状失效进行分析的基础上提出了失效聚集度的概念,并对经典ART算法(如:FSCS、RRT)进行改进,提出了失效聚集度ART(Crowding Level ART, CLART)算法。该算法运用多个局部区域依次搜索取代输入域内全局搜索的方法,达到快速锁定引发失效输入分布密集或聚集度高的失效区域的目的,在每次局部域内搜索时使用传统的ART算法生成一定密度的测试用例以提高触发局部失效的概率,从而实现算法有效性和效率的提高。实验结果表明:CLART算法针对点状失效模式和块状失效模式,其有效性和检错性比RT算法和FSCS算法均有明显提高。   4结语   本文在对三种失效模式研究的基础上,提出了失效聚集度的概念,并提出CLART算法对传统的ART算法进行改进。该算法运用多个局部区域依次搜索代替全局搜索的方法,能达到快速定位失效聚集度高的失效区域的目的,在每次局部域内搜索时用ART算法生成一定数量的测试用例,这不但提高了局部触发失效的概率,而且减少了全局域内TC距离计算,从而实现算法有效性和效率的提高。实验结果表明:本文提出的CLART算法对点状失效模式和块状失效模式的有效性和检错性能比RT算法和FSCS算法均有明显提高。   由于程序的主失效聚集度很难提前估

文档评论(0)

ganpeid + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档