当前位置: 首页 > 专利查询>江苏大学专利>正文

一种基于迭代区域均分与定位的自适应随机测试方法技术

技术编号:22075458 阅读:28 留言:0更新日期:2019-09-12 14:03
本发明专利技术公开了一种基于迭代区域均分与定位的自适应随机测试方法,用于降低随机测试中测试用例的盲目生成,提高随机测试的效能。本发明专利技术主要包括:1、确定输入域的范围;2、在输入域中随机生成第一个测试用例;3、对输入域均分,同时随机选择一个子域,然后再次均分(假设性均分),针对再次均分后的子域,随机生成测试用例,组成候选测试用例集合;4、针对候选测试用例集合,确定临近区域集合,将临近区域中的测试用例组成已执行测试用例集合,采用FSCS_ART(固定大小候选集的自适应随机)算法,确定下一个将要执行的测试用例。不断重复上述过程,直到找到程序错误。通过实验验证,本发明专利技术的方法比随机测试性能提高30个百分点。

An Adaptive Random Testing Method Based on Iterative Region Averaging and Locating

【技术实现步骤摘要】
一种基于迭代区域均分与定位的自适应随机测试方法
本专利技术提出了一种基于迭代区域均分与定位的自适应随机测试方法,用于测试用例的生成,属于测试自动化的

技术介绍
随着软件市场的不断扩大,导致软件规模日趋增大,软件功能日益复杂,如何确保软件产品的质量成为了一个重要的研究热点,而软件测试无疑成为了确保软件质量的重要环节。针对软件测试,科研人员提出了许多软件测试技术,而其中,随机测试由于其概念简单且可自动化,受到了越来越多的关注,现有的随机测试流程如图1所示。随机测试可以检测出人们无法预料到的错误(而这种错误的检测看起来只能由随机测试做到),但是,对于随机测试的争议自始至终存在,而这种争议主要是由于,随机测试只是盲目的随机产生测试用例,从不考虑已经执行过的测试用例的信息,所以,科研人员对于随机测试的效能产生了极大的争议性。同时,Chan等人发现,软件测试的表现受软件失效模式的影响,所谓失效模式就是指软件失效区域的分布模式。他们发现,软件失效区域往往呈现连续型分布。Chan等人总结提出了三种失效模式:(i)块状模式,如图3的a所示。(ii)条状模式,如图3的b所示。(iii)点状模式本文档来自技高网...

【技术保护点】
1.一种基于迭代区域均分与定位的自适应随机测试方法,其特征在于,包括如下步骤:步骤1,根据被测程序,确定输入域的维度和范围;步骤2,初始化区域R,初始化链表L、TestRegion、TempRegion,其中链表项抽象为Region={Point,Length,Testcase},其中Point为区域R的左下角点的坐标点,Length指代区域R在每个维度的长度,Testcase指代后续算法中位于该区域R的已经执行过的测试用例;步骤3,在整个输入域R中随机产生第一个测试用例,如果测试用例检测到程序错误,则测试结束,否则转到步骤4;步骤4,将已经执行过的测试用例添加到区域R中,同时将区域R添加到T...

【技术特征摘要】
1.一种基于迭代区域均分与定位的自适应随机测试方法,其特征在于,包括如下步骤:步骤1,根据被测程序,确定输入域的维度和范围;步骤2,初始化区域R,初始化链表L、TestRegion、TempRegion,其中链表项抽象为Region={Point,Length,Testcase},其中Point为区域R的左下角点的坐标点,Length指代区域R在每个维度的长度,Testcase指代后续算法中位于该区域R的已经执行过的测试用例;步骤3,在整个输入域R中随机产生第一个测试用例,如果测试用例检测到程序错误,则测试结束,否则转到步骤4;步骤4,将已经执行过的测试用例添加到区域R中,同时将区域R添加到TestRegion中。步骤5,如果链表L不为空,则转到步骤6,否则转到步骤8;步骤6,在链表L中随机选择一个区域R,针对该区域运行设置的算法,生成测试用例,如果测试用例检测到错误,则测试结束,否则,将该测试用例添加到区域R中,转到步骤7;步骤7,将区域R添加到TestRegion链表中,如果链表L不为空,转到步骤6,否则转到步骤8;步骤8,针对TestRegion链表的每个链表项,进行区域划分,转到步骤5。2.根据权利要求1所述的一种基于迭代区域均分与定位的自适应随机测试方法,其特征在于,所述步骤1的具体实现包括如下:步骤1.1,根据前期的软件设计文档,确定软件的输入域范围,即具有合理输入的集合,产生二维正方形的输入域,输入域在每个维度上的范围都为0—1;步骤1.2,根据步骤1.1确定的输入域,确定软件的维度,维度和输入域相关,由于该输入域涉及两个参数,设置维度为2;步骤1.3,根据步骤1.1产生的输入域,求得输入域的面积,设为D,在输入域中随机产生一个正方形的、面积为a*D的失效域。3.根据权利要求1所述的一种基于迭代区域均分与定位的自适应随机测试方法,其特征在于,所述步骤3的具体实现包括如下:步骤3.1,根据输入域的维度和每个维度的范围值,随机产生第一个测试用例。步骤3.2,判断该测试用例是否在失效区域中,如果不在失效区域中,认为没有发现错误,转到步骤4,如果位于失效区域中,认为存在错误,测试结束。4.根据权利要求1所述的一种基于迭代区域均分与定位的自适应随机测试方法,其特征在于,所述步骤6的具体实现包括如下:所述步骤6的具体步骤...

【专利技术属性】
技术研发人员:黄如兵孙伟峰陈锦富
申请(专利权)人:江苏大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1