[发明专利]一种演化环境下变异测试强度需求预测方法有效
申请号: | 201810561267.6 | 申请日: | 2018-05-29 |
公开(公告)号: | CN110543411B | 公开(公告)日: | 2021-07-02 |
发明(设计)人: | 王兴亚;房春荣;孙伟松;赵源;李玉莹 | 申请(专利权)人: | 南京大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210093 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种演化环境下变异测试强度需求预测方法。该方法基于特征提取和错误检测数目对软件的各个版本通过数据清洗和特征选择,构建用于模型训练的特征矩阵和强度向量;在此基础上,应用BP神经网络方法构建预测模型,并在模型构建时不断通过信号前向传播和误差后向传播结果调整模型权重,从而学习生成一个变异测试强度需求预测模型BP‑Model;最后,将当前软件版本的特征向量输入到BP‑Model中,最终生成当前软件版本的变异测试强度需求。本发明目的在于解决目前存在的新版本软件变异测试强度未知的难题,进而帮助测试人员制订合理的变异测试需求,帮助测试人员在有限的时间内构建有效的测试用例集。 | ||
搜索关键词: | 一种 演化 环境 变异 测试 强度 需求预测 方法 | ||
【主权项】:
1.一种演化环境下变异测试强度需求预测方法,其特征在于,基于特征提取和错误检测数目对软件的各个版本通过数据清洗和特征选择,构建用于模型训练的特征矩阵Data和强度向量vecstrength;在此基础上,应用BP神经网络方法构建预测模型,并在模型构建时不断通过信号前向传播和误差后向传播结果调整模型权重,从而学习生成一个变异测试强度需求预测模型BP-Model;最后,将当前软件版本的特征向量vecc=<acI,acE,acM>输入到BP-Model中,最终生成当前软件版本的变异测试强度需求strengthcmutation;该方法包括下列步骤:/n1)数据清洗,给定软件仓库SR={v0,…,vi-1,vi,vi+1,…,vc},其中v0表示待测软件的初始版本Initial Version,vc表示软件的当前版本Current Version;其中,每一个版本vi可以表示为一个五元组<aiI,aiE,aiM,numichecked,scoreimutation>,aiI、aiE、aiM分别表示软件的内在特征、演化特征、变异特征,numichecked表示发布vi+1版本前在vi版本中发现的缺陷数量,scoreimutation表示测试用例集的变异得分;/n本步骤的目的是从SR中去除测试效果不佳的软件版本,保留测试效果良好的软件版本的相关特征及变异测试强度等信息,为后续特征选择和模型构建提供原始数据;由于,v0缺乏演化特征,vc是待预测版本,因此首先去除v0和vc;对于余下版本{v1,v2,…,vc-1},通过比较错误检测数目进一步去除numchecked高于平均错误检测数目avechecked的版本;avechecked的计算公式如下:/n /n对于每个保留版本,新建一个特征向量vec=<aiI,aiE,aiM>,并将其添加到原始数据矩阵Dataraw中;同时,根据该版本的变异得分scoreimutation度量测试用例集的变异测试强度strengthimutation,并将其添加到强度向量vecstrength中;strengthmutation的度量公式如下:/n /n2)特征选择,给定原始数据矩阵Dataraw和强度向量vecstrength,对vecstrength和Dataraw中的每一列数据veccolumn通Min-Max标准化进行归一化处理,从而将数据置于更加合理的区间中;对于每列数据veccolumn,分别用min和max表示veccolumn中的最小值和最大值;Min-Max标准化公式如下:/n /n归一化完成后,通过Pearson相关系数度量每列数据veccolumn与vecstrength的相关性r以及相关显著性p-value,保留至少存在中等强度r>0.4且显著性相关p-value<0.05的数据至特征矩阵Data中;所有数据比较完成后,特征矩阵Data和vecstrength生成完毕;/n3)模型构建,给定特征矩阵Data和强度向量vecstrength,初始化BP神经网络模型各层,包括输入层、隐藏层和输出层;依次从特征矩阵中选择每一个样本数据vecrow以及对应的变异测试强度strengthmutation输入到模型中,计算各个隐藏层和输出层的输入输出;对比实际输出结果与strengthmutation计算反向误差,后向修正输出层、各个隐藏层和输入层的权值;计算全局误差;所有样本都输入到模型后,或当全局误差为0时,学习过程结束,输出训练后的BP神经网络模型BP-Model;/n4)强度预测,给定模型BP-Model以及当前软件版本vc的特征向量vecc=<acI,acE,acM>,归一化vecc并将其输入到BP-Model中,最终生成vc的变异测试强度需求strengthcmutation。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201810561267.6/,转载请声明来源钻瓜专利网。