[发明专利]一种基于排斥区域的自适应随机测试的方法有效
申请号: | 201310238825.2 | 申请日: | 2013-06-17 |
公开(公告)号: | CN103279422A | 公开(公告)日: | 2013-09-04 |
发明(设计)人: | 李必信;兰阳阳;王璐璐;陶传奇;刘力;陈艺 | 申请(专利权)人: | 东南大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 杨晓玲 |
地址: | 211189 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于排斥区域的自适应随机测试的方法,主要用于降低随机测试中测试用例生成的盲目性,同时消弱边界效应带来的问题。本发明首先确定程序的输入域;然后根据点到空间中心的距离设置排斥区域的半径大小;再根据输入域随机生成测试用例并进行测试;最后分析测试的结果,如果测试用例得到的结果符合期望值,则重复上述过程,否则停止测试并修改程序。 | ||
搜索关键词: | 一种 基于 排斥 区域 自适应 随机 测试 方法 | ||
【主权项】:
1.一种基于排斥区域的自适应随机测试的方法,其特征在于,该方法包括如下步骤:步骤1)根据被测函数或程序的接口获取其输入域{Ik}的取值范围和输入域的中心点C的坐标向量,其中k为{1,2,…,n},n是输入域的维数,输入域第k维的取值范围(ikmin,ikmax),中心点的坐标向量的第k维的值是(ikmax+ikmin)/2,然后采用下式计算输入域中顶点与中心点的距离:D max = Σ k = 1 n ( i k max - i k min ) 2 2 ; ]]> 步骤2)建立空链表,链表项的数据结构抽象为Item={Point,DistToCen,Next},其中Point表示程序的输入向量,格式为Point=(p1,p2,...,pn),DistTCen表示Point到输入空间的中心的距离,Next表示链表中该项的下一项;初始化链表中元素的个数Num为0,设定排斥区域在空间中的基础比例Ratio为50%;步骤3)根据输入域的第k维的范围(ikmin,ikmax),在该范围中随机生成一个值,作为输入向量第k维的值,将所述输入向量作为程序的参数来运行程序,如果程序的运行结果与预期不符,则转至步骤9),否则转至步骤4);步骤4)将输入向量和根据下式计算输入向量到中心点的距离然后将输入向量到中心点的距离与输入向量一同保存到链表的头部,同时令Num=Num+1;步骤5)根据下式计算当前排斥区域的基础半径:R = ∏ 1 n ( i k max - i k min ) * Ratio 2 π * NUM ; ]]> 步骤6)根据程序的接口和当前输入域随机生成程序的当前输入向量;步骤7)计算程序的当前输入向量是否包含在已生成测试用例的排斥区域中,如是,则转至步骤6),否则转至步骤8);步骤8)将程序的当前输入向量作为程序的输入运行程序,如果程序运行的结果与预期不符则进入步骤9),否则回到步骤4);步骤9)结束测试流程。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东南大学,未经东南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310238825.2/,转载请声明来源钻瓜专利网。