[发明专利]一种基于AP-PSO算法的组合测试用例生成方法有效

专利信息
申请号: 201611097859.4 申请日: 2016-12-03
公开(公告)号: CN106598849B 公开(公告)日: 2019-06-04
发明(设计)人: 包晓安;杨亚娟;张娜;张唯;滕赛娜 申请(专利权)人: 浙江理工大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 杭州求是专利事务所有限公司 33200 代理人: 郑海峰
地址: 310018 浙江省杭州市*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 ap pso 算法 组合 测试 生成 方法
【说明书】:

发明公开了一种基于AP‑PSO算法的组合测试用例生成方法,属于软件测试领域。本发明包括:通过静态分析获得需覆盖的组合级;调整one‑test‑at‑a‑time策略,将随机选取一个组合改为构造一个优先级度量函数,对每个组合进行优先级度量,选取优先级最高的组合;采用自适应粒子群算法生成单条测试用例,以种群粒子优劣为依据对惯性权重进行自适应调整,对粒子的最大速度进行控制,采用离散化方式对每个粒子的速度进行取整运算,并使用反射墙策略对粒子位置进行边界处理,防止飞出有效的搜索空间。本发明可适用于不同覆盖强度的覆盖表生成,有效缩减了组合测试用例集的规模,并大幅度提升了组合测试用例的生成效率。

技术领域

本发明属于软件测试领域,具体涉及一种基于AP-PSO算法的组合测试用例生成方法。

背景技术

软件测试是软件工程中保证软件质量的至关重要的环节,理想的软件测试方法需要同时具有高错误检测能力、低成本消耗和广泛的适用性等特点。组合测试作为一种基于规约的软件测试方法,旨在从待测软件面临的庞大组合空间中,选取少量但有效的测试用例,生成覆盖程度高、揭错能力强的测试用例集。

粒子群算法作为一种较新的启发式搜索算法,具有易理解、易实现、全局搜索能力强等特点,目前也被应用于该领域中。目前,在利用粒子群优化生成覆盖表的相关研究中,主要实现了两两组合覆盖测试用例生成,并未考虑更高覆盖力度以及交互力度不统一的情况。同时,参数的选取对算法性能有很大影响,绝大多数研究工作通常选取一组经验参数,没有考虑到参数选择在不同覆盖表上的特殊性。

因此,在粒子群算法具有良好的鲁棒性的前提下,将one-test-at-a-time策略和自适应粒子群算法相结合,根据粒子的优劣对惯性权重进行自适应调整,提出了一种可处理任意覆盖强度的组合测试用例生成方法。该算法能使该算法在覆盖表生成上具有更强的适用能力,在测试用例集规模和执行时间上均具有一定的优势。

发明内容

本发明的目的是对原始PSO算法进行改进,增加优先级度量函数和惯性权值的自适应调整策略,提供一种更加有效的组合测试用例生成方法。

本发明解决其技术问题所采用的技术方案如下:

定义:

测试用例——假设一个待测软件系统(SUT)受到n个独立因素的影响,这些因素形成一个有限集合F={f1,f2,…,fk},其中第i个因素fi拥有li个可选取值,则其对应的有效取值集可表示为Di={1,2,…,li}。那么,可以称n元组test=(x1,x2,…,xn)(x1∈D1,x2∈D2,…,xn∈Dn)为SUT的一条测试用例。

固定力度覆盖表——CA(N;t,k,v)表示一个N×k的矩阵,每列可选取值个数为v,任意的N×t子矩阵包含了在v值域上的所有t元组。

可变力度覆盖表——VSCA(N;t,k,v,C)在CA(N;t,k,v)基础上,还满足包含一个或多个子矩阵C,并且C的覆盖强度大于t。

one-test-at-a-time策略:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江理工大学,未经浙江理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611097859.4/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top