[发明专利]一种基于软件可靠性增长模型的测试工作量分配方法在审

专利信息
申请号: 201610977069.9 申请日: 2016-11-04
公开(公告)号: CN108021498A 公开(公告)日: 2018-05-11
发明(设计)人: 周毓明;冯义洋;卢红敏;徐宝文 申请(专利权)人: 南京大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 暂无信息 代理人: 暂无信息
地址: 210023 江苏省南京*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提供一种基于软件可靠性增长模型的测试工作量分配方法,包括下列步骤:1)软件数据集的采集和处理;2)软件缺陷预测模型的构建;3)软件缺陷发现模型的构建;4)软件缺陷发现模型V0版本参数估计;5)软件缺陷发现模型V1版本参数估计;6)软件V1版本最优测试工作量分配。本发明是一种测试工作量分配方案,解决了目前如何在测试资源有限的情况下最大效益的测试出系统中缺陷的问题。该方案充分利用了先前软件版本的信息,来对当前版本的系统的测试工作量进行分配,从而最终可以发现最多数目的累积缺陷。
搜索关键词: 一种 基于 软件 可靠性 增长 模型 测试 工作量 分配 方法
【主权项】:
1.一种基于软件可靠性增长模型的测试工作量分配方法,其特征在于,先通过缺陷补丁报告对软件的旧版本(V0版本)和新版本(V1版本)分别进行数据集的采集和处理过程;接着使用随机森林、线性回归和支持向量机等缺陷预测技术来构建缺陷预测模型(V0为训练集,V1为测试集);然后使用软件可靠性增长模型之一的Goel-Okumoto模型来对V0版本和V1版本各自构建软件缺陷发现模型,并对两个版本的缺陷发现模型分别进行参数估计;最终可以得到软件V1版本的最优测试工作量(测试用例)分配方案;该方法包括下列步骤:1)软件数据集的采集和处理;软件版本V0要收集的数据信息包括:缺陷信息收集、测试用例的收集及处理和基础度量收集;软件版本V1要收集的数据信息包括:基础度量收集和待分配总测试工作量等;2)软件缺陷预测模型的构建;定义1:软件缺陷预测模型包含以下三个关键属性,即描述、输入和输出;描述:缺陷预测模型是用来读取软件训练数据集进行训练并对软件测试集进行测试的,常用的预测模型有随机森林、线性回归和支持向量机等;输入:软件的代码度量和过程度量等信息;输出:表示软件预期出现的缺陷数目;使用步骤1)采集和处理过的软件数据集,分别将版本V0和版本V1作为训练集和测试集,并按照描述、输入、输出的格式组织起来进行软件缺陷数目预测过程;3)软件缺陷发现模型的构建;定义1:软件缺陷发现模型可以相对于给定的测试资源估计出可发现缺陷的数目,我们所使用的模型是拓展的指数可靠性增长模型,也被称之为Goel-Okumoto模型(以下简称Go模型),该模型在任意的测试时间内有一个恒定的缺陷检测率,用该模型可以代表测试工作量和检测出的累积缺陷之间的关系,计算公式如下: H ^ i ( t i ) = a i [ 1 - exp ( - b i t i ) ] , b i = b 0 / S i ]]>式中为在给定一定量的测试工作量情况下,模块mi最终可以发现的缺陷数,ti为模块mi分配到的测试工作量,bi为单位测试工作量可以发现的缺陷数,ai为模块mi的初始缺陷数,Si为模块mi的规模大小,b0为常量,由步骤4)估计而得。4)软件缺陷发现模型V0版本参数估计;定义1:软件缺陷发现模型V0版本ai计算公式如下: a i = H i + R 1 * S i n e w 1000 + R 2 * S i r e u s e d 1000 ]]>其中,Hi为模块mi的实际检测到的缺陷数,是模块mi的新增的/修改的代码行数,是模块mi中复用的代码行数。R1和R2是剩余缺陷率,分别表示在新增的/修改后的代码中,1KLOC行中仍残留然有R1个缺陷;在复用的代码中,1KLOC行中仍残留然有R2个缺陷。定义2:参数b0表明每单位测试工作量可检测的缺陷数,由实际分配的测试工作量和检测到的缺陷数得出,计算公式如下:b0=-Stotal/ttotal*log(1-Htotal/atotal)其中Stotal是所有模块的总大小,ttotal是总的实际测试工作量,Htotal是实际检测到的缺陷的总数,并且有5)软件缺陷发现模型V1版本参数估计;case 1:若mi在V0中存在A.如果假设V0版本的mi有k个缺陷在V1中被修复了,则: a i ( v i , m i ) = a i ( v i - 1 , m i ) + R 1 * S i n e w 1000 + R 2 * S i r e u s e d 1000 - k ]]>B.如果说明mi实际是没有缺陷的,因此我们可以降低V1版本中mi的ai值:ai(vi,mi)=ai(vi-1,mi)/10case 2:mi在V0中不存在,属V1中新增的模块。按如下方法计算: a i ( v i , m i ) = A p p l y M o d e l ( mod e l , m i ) + R 1 * S i 1000 ]]>其中,model为在V0上建立的缺陷预测模型,ApplyModel(model,mi)为应用这个缺陷预测模型所预测的mi上的缺陷数目,用来代替实际检测得到的缺陷数目。6)软件V1版本最优测试工作量分配;已知V1版本的待分配的测试工作量ttotal,每个模块mi的ai和bi值,按上述步骤可以求得最优测试工作量分配策略下mi的工作量,将结果代入缺陷发现模型,最终可发现最多数目的累积缺陷。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/patent/201610977069.9/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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