一种软件调试方法和电子设备与流程

文档序号:29205378发布日期:2022-03-11 23:57阅读:来源:国知局

技术特征:
1.一种软件调试方法,其特征在于,包括:确定待测试程序的待测试变量,所述待测试变量包括具备关联关系的自变量以及因变量;数据采集,包括,在所述待测试程序运行过程中,记录所述自变量以及所述因变量的值的连续变化,获取记录数据集,根据所述记录数据集生成训练数据集;模型训练,包括,基于所述训练数据集训练计算机学习模型,拟合测试用回归模型,其中,所述测试用回归模型用于体现所述自变量与所述因变量间的关联关系,在模型训练过程中,模型输入项为所述训练数据集中的自变量的值,模型输出项为所述训练数据集中的因变量的值;异常点定位,包括,将所述待测试程序运行过程中所述自变量的值输入到所述测试用回归模型,对比所述测试用回归模型的输出以及所述待测试程序运行过程中所述因变量的值,确定所述待测试程序运行过程中的数据异常点。2.根据权利要求1所述的方法,其特征在于,所述数据采集,包括:重复运行所述待测试程序,当所述待测试程序的运行次数满足预设次数或者所述记录数据集中的记录数满足预设记录数时,停止运行所述待测试程序,根据所述记录数据集生成训练数据集。3.根据权利要求1所述的方法,其特征在于,所述数据采集,包括:重复运行所述待测试程序,当所述待测试程序的运行次数满足预设次数或者所述记录数据集中的记录数满足预设记录数时,输出数据采集完成提示;当数据采集被关闭或者软件调试被启动时,停止运行所述待测试程序,根据所述记录数据集生成训练数据集。4.根据权利要求1所述的方法,其特征在于:所述数据采集,包括:运行所述待测试程序,记录所述自变量以及所述因变量的值的连续变化,获取第一记录数据集,将所述第一记录数据集作为所述训练数据集;所述异常点定位,包括:所述数据采集,包括:运行所述待测试程序,记录所述自变量以及所述因变量的值的连续变化,获取第二记录数据集,将所述第二记录数据集作为所述测试数据集;将所述测试数据集中所述自变量的值输入到所述测试用回归模型,对比所述测试用回归模型的输出以及所述测试数据集中所述因变量的值,确定所述测试数据集中的数据异常点。5.根据权利要求1所述的方法,其特征在于:所述数据采集,包括:运行所述待测试程序,记录所述自变量以及所述因变量的值的连续变化,获取所述记录数据集;将所述记录数据集分割为所述训练数据集以及测试数据集;所述异常点定位,包括,将所述测试数据集中所述自变量的值输入到所述测试用回归模型,对比所述测试用回归模型的输出以及所述测试数据集中所述因变量的值,确定所述测试数据集中的数据异常点。6.根据权利要求5所述的方法,其特征在于,所述模型训练,包括:调用机器学习模型库中的一个未调用过的机器学习模型:基于所述训练数据集训练所述机器学习模型,以拟合备选测试用回归模型;
将所述测试数据集中的自变量的值作为输入项输入所述备选测试用回归模型,以获取所述备选测试用回归模型的输出;计算所述备选测试用回归模型的输出,与所述测试数据集中的因变量的值之间的相似度;当所述备选测试用回归模型的输出,与所述测试数据集中的因变量的值之间的相似度大于等于预设相似度阈值时,将所述备选测试用回归模型作为所述测试用回归模型。7.根据权利要求5所述的方法,其特征在于,所述模型训练,包括:调用机器学习模型库中的机器学习模型:基于所述训练数据集,分别训练所述机器学习模型库中的每一个机器学习模型,以拟合多个备选测试用回归模型;将所述测试数据集中的自变量的值作为输入项分别输入每一个所述备选测试用回归模型,以获取每一个所述备选测试用回归模型的输出;计算每一个所述备选测试用回归模型的输出,与所述测试数据集中的因变量的值之间的相似度,获取相似度数组;当所述相似度数组中的最大相似度值大于等于预设相似度阈值时,将所述最大相似度值对应的所述备选测试用回归模型作为所述测试用回归模型。8.根据权利要求1所述的方法,其特征在于,所述模型训练,包括:基于所述训练数据集训练所述计算机学习模型,拟合备选测试用回归模型;将所述训练数据集中所述自变量的值输入到所述备选测试用回归模型,对比所述备选测试用回归模型的输出以及所述训练数据集中所述因变量的值,确定所述训练数据集中的数据异常点;从所述训练数据集中移除数据异常点;基于移除数据异常点后的训练数据集训练所述计算机学习模型,拟合所述测试用回归模型。9.根据权利要求1~8中任一项所述的方法,其特征在于,所述方法还包括:根据所述记录数据集绘制变量图形,所述变量图形用于图像化描述所述自变量以及所述因变量的值的连续变化。10.根据权利要求9所述的方法,其特征在于,所述方法还包括:在所述变量图形上标记所述数据异常点。11.根据权利要求1~8中任一项所述的方法,其特征在于,所述方法还包括:确认回退节点所对应的所述自变量和/或所述因变量的值;以所述自变量的初始值为起点,运行所述待测试程序;当所述待测试程序的运行,导致所述自变量和/或所述因变量的值达到所述回退节点所对应的所述自变量和/或所述因变量的值时,停止运行所述待测试程序;展示所述待测试程序的当前状态。12.根据权利要求11所述的方法,其特征在于,以用户选定的数据异常点为所述回退节点。13.根据权利要求1~8中任一项所述的方法,其特征在于,所述方法还包括:当所述自变量和/或所述因变量为包含多个子量的组变量时,针对组变量展示节点绘
制变量图形,其中,所述变量图形用于图像化描述所述组变量中每一个子量在所述组变量展示节点的值;在所述变量图形上,标记作为所述组变量展示节点的操作焦点的子量。14.根据权利要求13所述的方法,其特征在于,以用户选定的数据异常点为所述组变量展示节点。15.一种电子设备,其特征在于,所述电子设备包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述电子设备执行如权利要求1~14中任一项所述的方法步骤。16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当其在计算机上运行时,使得计算机执行如权利要求1-14中任一项所述的方法。

技术总结
本申请实施例提供一种软件调试方法和电子设备。方法包括:确定待测试程序的待测试变量,所述待测试变量包括具备关联关系的自变量以及因变量;在所述待测试程序运行过程中,记录所述自变量以及所述因变量的值的连续变化,获取训练数据集;基于所述训练数据集训练计算机学习模型,拟合测试用回归模型;将所述待测试程序运行过程中所述自变量的值输入到所述测试用回归模型,对比所述测试用回归模型的输出以及所述待测试程序运行过程中所述因变量的值,确定所述待测试程序运行过程中的数据异常点。根据本申请一实施例的方法,可以大大提高软件漏洞定位的准确率,减少软件漏洞定位的耗时,避免遗漏软件漏洞。避免遗漏软件漏洞。避免遗漏软件漏洞。


技术研发人员:魏可鑫 董鑫 林志强 胡绍平
受保护的技术使用者:华为技术有限公司
技术研发日:2020.09.10
技术公布日:2022/3/10
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1