[发明专利]一种基于历史缺陷数据挖掘的软件故障注入方法有效
申请号: | 202010724704.9 | 申请日: | 2020-07-24 |
公开(公告)号: | CN111597122B | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 熊阳 | 申请(专利权)人: | 四川新网银行股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F11/00;G06N7/00;G06N20/00 |
代理公司: | 成都智言知识产权代理有限公司 51282 | 代理人: | 濮云杉 |
地址: | 610094 四川省成都市成都*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 历史 缺陷 数据 挖掘 软件 故障 注入 方法 | ||
本发明一种基于历史缺陷数据挖掘的软件故障注入方法,包括:A.查询软件的实体元素记录;B.查询缺陷数据;建立缺陷和注入故障类型的关联关系并保存;C.初始化隐马可夫模型参数;使用数据训练模型,得到最优参数的模型;D.获取软件变更内容包含的实体元素;E.将最优参数模型和实体元素一起代入维特比算法计算出最优可能结果;F.输出注入故障类型和关联缺陷数据,设计故障注入策略。本发明以客观数据的挖掘和分析来驱动故障注入策略的设计,指导测试人员向特定的软件模块中针对性地注入最有可能导致软件系统出现健壮性、容错性、容灾性和服务高可用性故障的缺陷,提高了故障注入的工作效率,工作结果也具有较高的准确度和可信度。
技术领域
本发明涉及计算机软件开发及软件测试领域,具体讲是一种基于历史缺陷数据挖掘的软件故障注入方法。
背景技术
软件故障注入是指使用特定的工具和技术来构造或者触发软件系统的某一个或某一些缺陷,使得软件系统处于故障状态,在故障发生后,观察软件系统的短期和长期运行状态,评估软件系统是否具备健壮性、容错性、容灾性和服务高可用性。通常来说,软件故障注入的原理是使用特定的工具来修改软件系统的程序执行语句、数据库中的数据或者内存中的数据来模拟软件缺陷的发生。软件故障注入的技术主要有调试器注入、设备驱动器注入、网络通信注入和硬件注入等。
目前对如何分析应该往软件系统的哪个模块中注入缺陷、注入何种缺陷以及注入缺陷后会造成何种故障的问题,通常是由测试人员根据自己的经验来判断软件系统的哪些模块的健壮性、容错性、容灾性和服务高可用性相对较差,从而注入各种常见缺陷以广泛检测软件系统的健壮性、容错性、容灾性和服务高可用性。这种做法的工作量巨大,效率低下,并且会受到测试人员的经验影响,具有较大的随意性,工作质量也难以保证。
发明内容
本发明提供一种基于历史缺陷数据挖掘的软件故障注入方法,以客观数据的挖掘和分析来驱动故障注入策略的设计,指导测试人员向特定的软件模块中针对性地注入最有可能导致软件系统出现健壮性、容错性、容灾性和服务高可用性故障的缺陷,提高了故障注入的工作效率,工作结果也具有较高的准确度和可信度。
本发明一种基于历史缺陷数据挖掘的软件故障注入方法,包括:
A.根据软件的界面模块、功能模块和程序模块包含的实体元素,在数据库的实体元素表中查找出相对应的实体元素的数据记录,根据所述实体元素的数据记录,在数据库的数据缺陷表中查询出这些实体元素对应的所有缺陷数据记录;
其中所述软件的界面模块是指软件的图形用户界面;功能模块是软件的各种功能组件;程序模块是指软件的程序、代码行等。
B.将所有缺陷数据记录分为两个数据集:测试环境缺陷数据集和生产环境缺陷数据集,在所述两个数据集中均包含了缺陷数据的以下字段:缺陷id、缺陷所属的实体元素id、缺陷类别和缺陷所在环境;
C.建立注入故障类型数据集;并且根据测试环境中软件模块的实际运行情况,针对测试环境缺陷数据集中的每一个缺陷数据,建立该缺陷数据与注入故障类型的关联关系数据集;以及根据生产环境中软件模块的实际运行情况,针对生产环境缺陷数据集中的每一个缺陷数据,建立该缺陷数据与注入故障类型的关联关系数据集;
并将所有缺陷数据与注入故障类型的关联关系数据保存在数据库中的缺陷数据与注入故障关系表中,每一条关系数据至少包含以下字段:缺陷id、注入故障类型id;
D.初始化隐马可夫模型λ的参数, 建立注入故障预测模型;
E.以测试环境缺陷数据集和缺陷数据与注入故障类型的关联关系数据集一起作为训练样本集,以及将生产环境缺陷数据集和缺陷数据与注入故障类型的关联关系数据集一起作为测试样本集,用训练样本集和测试样本集对注入故障预测模型进行训练和测试,当训练误差值低于阈值时,终止训练,得到满足要求的最优参数的注入故障预测模型;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川新网银行股份有限公司,未经四川新网银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010724704.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置