[发明专利]基于粒子群和多标准的模糊测试用例选择方法和装置有效
| 申请号: | 202010791547.3 | 申请日: | 2020-08-07 |
| 公开(公告)号: | CN111897735B | 公开(公告)日: | 2022-11-11 |
| 发明(设计)人: | 胡昌振;王夏菁;马锐;蒋瑾蔓;王雪霏 | 申请(专利权)人: | 北京理工大学 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F21/57;G06N3/00 |
| 代理公司: | 北京理工大学专利中心 11120 | 代理人: | 温子云 |
| 地址: | 100081 *** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 粒子 标准 模糊 测试 选择 方法 装置 | ||
1.一种基于粒子群和多标准的模糊测试用例选择方法,其特征在于,包括:
以测试用例作为粒子,采用粒子群优化算法选择综合最优的测试用例作为下一轮待变异的测试用例;在粒子群优化过程中,利用选取的多个测试用例选择标准确定每个测试用例i的综合潜质eff(i),将粒子测试用例i在所有迭代中综合潜质eff(i)的最大值作为个体最优解,将目前已执行的所有迭代中所有测试用例中综合潜质eff(i)的最大值作为群体最优解,根据个体最优解和群体最优解进行粒子群优化,获得最优粒子作为待变异测试用例;
并且利用测试用例的潜在价值和预期覆盖率动态地为所述待变异测试用例确定变异能量,包括:
计算所述测试用例的潜在价值P(i)为:计算测试用例i及其变异产生的测试用例中发现崩溃的数量占模糊测试中已发现崩溃总数量的比值P1(i),计算测试用例i及其变异产生的测试用例中发现新路径的数量占模糊测试中已发现新路径总数的比值P2(i),将P1(i)与P2(i)之和或加权和作为潜在价值P(i);
计算预期覆盖率G(i)为:测试用例i的代码覆盖增长率和时间比值的乘积,或者为测试用例i的代码覆盖增长率、时间比值和利用覆盖增长率的能力常量的乘积;所述时间比值为测试用例i的执行时间与测试用例队列中所有测试用例的执行时间总和之比;
基于潜在价值P(i)和预期覆盖率G(i),计算获得测试用例i的变异能量值energy(i):
energy(i)=σ·(P(i)+G(i))·dep(i)
其中,σ为常量,表示初始分配能量,dep(i)为测试用例i的路径深度。
2.如权利要求1所述的方法,其特征在于,所述综合潜质eff(i)的计算方式为:
其中,Wj为第j种测试用例选择标准对应的权值,Cj为测试用例i对应的测试用例选择标准j的取值,Sj为模糊测试的测试用例队列中所有测试用例对于测试用例选择标准j的取值总和,n为测试用例选择标准的总数。
3.如权利要求1或2所述的方法,其特征在于,所述多个测试用例选择标准包括:文件大小、执行时间、路径覆盖率、是否触发新路径、是否触发新基本块、崩溃数量、路径深度以及是否变异过。
4.如权利要求3所述的方法,其特征在于,在计算综合潜质eff(i)时,需要对各测试用例选择标准的取值进行处理后再用于计算综合潜质eff(i);所述处理为:文件大小和执行时间两个选择标准的值取反,路径覆盖率、触发新路径、触发新基本块、崩溃数量以及路径深度五个选择标准的值保持不变;针对是否变异过这一选择标准,若变异过则设置为-1,若没有变异则设置为1。
5.如权利要求2所述的方法,其特征在于,测试用例选择标准对应的权值采用AHP法、专家评分法、熵权法或CRITIC赋权法确定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010791547.3/1.html,转载请声明来源钻瓜专利网。





