[发明专利]一种进行模糊测试的方法及系统有效
申请号: | 200910131170.2 | 申请日: | 2009-04-07 |
公开(公告)号: | CN101859274A | 公开(公告)日: | 2010-10-13 |
发明(设计)人: | 唐文 | 申请(专利权)人: | 西门子(中国)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100102 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 进行 模糊 测试 方法 系统 | ||
1.一种进行模糊测试的方法,包括:
A、选择一组初始测试用例作为第一代群体,将所述第一代群体作为当前群体;
B、采用当前群体中的测试用例对被测软件程序进行测试,得到测试结果;
C、根据所述测试结果对测试用例进行淘汰;
D、根据当前群体中未被淘汰的测试用例产生下一代群体;
E、判断是否满足结束条件,若没有满足,则以D操作所产生的下一代群体作为当前群体,重复B~D的操作,若满足,则结束本方法流程。
2.根据权利要求1所述的方法,其特征在于:
所述测试结果包括:错误响应、正确响应、没有响应或被测软件程序崩溃。
3.根据权利要求2所述的方法,其特征在于,所述C操作包括:
C1、根据所述测试结果计算每一个测试用例的适应度;
C2、根据所述适应度对测试用例进行淘汰。
4.根据权利要求3所述的方法,其特征在于,该方法进一步包括:预先设置增长因子、降低因子和探测度门限;所述增长因子、降低因子、探测度门限和适应度的取值范围均为大于等于0、且小于等于1的实数;
所述C1操作包括:
如果测试用例导致的测试结果为被测软件程序崩溃,则将所述测试用例的适应度置为1;
如果测试用例导致的测试结果为正确响应,则使所述测试用例的适应度增加所述增长因子对应的值;
如果测试用例导致的测试结果为错误响应或没有响应,则使所述测试用例的适应度减低所述降低因子对应的值;
如果测试用例的探测度小于等于所述探测度门限,则令所述测试用例的适应度等于其自身的(1-所述测试用例的探测度)倍;
如果测试用例的探测度大于所述探测度门限,则令所述测试用例的适应度等于其自身的(1+所述测试用例的探测度)倍。
5.根据权利要求3或4所述的方法,其特征在于,该方法进一步包括:预先设置淘汰门限;
所述C2操作包括:将适应度低于所述淘汰门限的测试用例淘汰。
6.根据权利要求3或4所述的方法,其特征在于,该方法进一步包括:预先设置淘汰率;
所述C2操作包括:根据所述预先设置的淘汰率,以测试用例的适应度越高,淘汰该测试用例的概率越低的方式进行淘汰。
7.根据权利要求6所述的方法,其特征在于,所述预先设置淘汰率为:按照d=en-N进行设置;
其中:d表示淘汰率;
n为当前群体的大小;
N为群体大小的统计平均值。
8.根据权利要求1至4任一项所述的方法,其特征在于,所述D操作包括:
D1、将当前群体中未被淘汰的测试用例映射为基因编码;
D2、根据当前群体中每个测试用例的适应度及其对应的基因编码进行繁衍,得到下一代测试用例的基因编码;
D3、将所述得到的下一代测试用例的基因编码映射为对应的测试用例。
9.根据权利要求2至4任一项所述的方法,其特征在于:
所述结束条件包括:导致被测软件程序崩溃的测试用例达到预先设置的数量、或对输入空间的测试覆盖率达到预先设置的比例。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西门子(中国)有限公司,未经西门子(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910131170.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种图像检索方法
- 下一篇:一项分级别异常处理技术