一种智能处置的软件自动化回归测试方法、系统及设备技术方案

技术编号:37508547 阅读:19 留言:0更新日期:2023-05-07 09:47
本发明专利技术提供一种智能处置的软件自动化回归测试方法、系统及设备,所述方法包括:启动自动化回归测试,执行测试案例,检查任务中的测试案例执行结果,判断是否需要智能比对,若是,则将本次报错信息与预设的ERROR库中的报错信息进行比对,若匹配成功,则获取ERROR库中对应的解决方案生成智能调度表,获取智能调度表中对应脚本进行处置,处置成功后,自动返回重新执行该测试案例,若匹配不成功,则将本次报错信息与RESULT库中的错误关键字进行比对,将首次出现的报错信息添加到RESULT库,进行手工处置,之后通过手工重新发起的方式,重新执行失败的测试案例。本发明专利技术可解决现有回归测试中人工干预过多,测试效率较低等问题,极大提高了测试效率。测试效率。测试效率。

【技术实现步骤摘要】
一种智能处置的软件自动化回归测试方法、系统及设备


[0001]本专利技术涉及软件测试
,尤其涉及一种智能处置的软件自动化回归测试方法、系统及设备。

技术介绍

[0002]日常工作中,测试人员根据需求文档或接口文档,进行需求分析并编写自动化测试案例,人工构建自动化测试案例库。当进行自动化回归测试时,由人工先进行测试数据准备,数据准备是最耗费人力成本的环节之一,往往需要通过查询数据库或手工造数来完成,数据准备完成后,再由测试人员选择自动化测试案例库中相关的测试案例,进行回归测试。
[0003]案例执行失败后,常用的解决方法通常是多次选择失败案例进行重跑,或者由测试人员对报错日志进行人工分析,定位案例执行失败的原因,失败的原因通常是:

环境问题;

数据问题;

测试案例本身编写问题。这些问题通常需要由测试人员进行人工修复后,再次执行案例,案例才能执行成功,自动化回归测试结束后,需要人工逐个排查可能存在的缺陷。
[0004]自动化回归测试常常在非工作时间进行,无人工进行数据准备、报错日志分析与问题排查修复,这样不仅拖延了回归测试时间,还给项目上线造成了一定的延期风险。
[0005]针对以上情况,现有期刊文献、专利等提出了一些解决方案,如申请号为CN201710313381.2的中国专利技术专利《软件自动化测试的报错日志的自动分析方法和系统》,其公开了一种软件自动化测试的报错日志的自动分析方法和系统,能够自动根据报错日志信息进行错误类型匹配,提高测试人员分析报错日志的效率、减少分析及等待时间。
[0006]申请号为CN202010274003.X的中国专利技术专利《回归测试方法及装置》,其公开了一种方法,可以将服务器返回的结果报文与回归测试案例的预设报文进行比对;若回归测试案例的预设报文与结果报文比对一致,则测试案例回归测试成功;否则回归测试失败。可减少测试人员的重复性工作,有效提高测试人员的工作效率。
[0007]申请号为CN202011275999.2的中国专利技术专利《自动回归测试方法、装置、设备及存储介质》,公开了一种自动化回归测试方法,通过检测回归测试指令,预设回归用例集合,根据回归用例发送回归测试请求,自动回归接口,回归测试响应与回归测试用例中的接口测试响应进行对比,以获得测试结果,生成测试报告并推送。
[0008]上述针对测试的方法和系统,更多的是涉及案例失败后直接进行重跑、将错误日志发送给相关方、对报错日志的自动分析等,而未涉及数据准备、测试案例自动更新和对错误问题本身进行处理。有些错误问题未修复,导致案例重跑后连续失败,以及共性问题引起大批量执行失败,浪费回归测试资源和时间成本。

技术实现思路

[0009]本专利技术要解决的技术问题,在于提供一种智能处置的软件自动化回归测试方法、系统及设备,解决现有回归测试中人工干预过多,测试效率较低的问题。
[0010]第一方面,本专利技术提供了一种智能处置的软件自动化回归测试方法,包括如下步骤:
[0011]步骤1、启动自动化回归测试;
[0012]步骤2、根据测试案例所需数据检测数据模型是否有数据,若有,则直接进入步骤3,否则,调用数据脚本工具创建符合测试案例要求的数据后,进入步骤3;
[0013]步骤3、根据给定的测试任务范围,选择测试环境和测试数据,自动执行测试案例,检查任务中的测试案例执行结果,判断是否需要执行智能比对,若是,则进入步骤4,否则,结束流程;
[0014]步骤4、执行智能比对,将本次报错信息与预设的ERROR库中的报错信息进行比对,若匹配成功,则获取ERROR库中对应的解决方案生成智能调度表,进入步骤5,否则,进入步骤6;
[0015]步骤5、发起智能调度流程,获取智能调度表中对应的解决方案的脚本进行处置,若处置成功后,则自动返回步骤1重新执行该测试案例,否则,进入步骤6;
[0016]步骤6、将本次报错信息与RESULT库中的错误关键字进行比对,若匹配不成功,则将该测试案例信息及执行报错信息添加到RESULT库,提示测试人员进行手工处置,手工处置结束后,通过手工重新发起的方式,重新执行失败的测试案例,返回步骤1;所述RESULT库用于存储自动化案例回归测试中失败案例的已去重报错结果。
[0017]进一步的,所述步骤3具体包括:根据给定的测试任务范围,选择测试环境和测试数据,自动执行测试案例,检查任务中的测试案例执行结果,若所述任务下测试案例均执行成功,则判为不需要执行智能比对,结束本次该测试案例的自动化回归测试;若所述任务执行完成,但任务中存在部分执行失败的案例,则判为需要执行智能比对,进入步骤4;若所述任务未执行完成,但案例执行失败率已达到设定的阈值,则判为需要执行智能比对,进入步骤4。
[0018]进一步的,所述步骤4具体包括:
[0019]步骤41、采用的深度学习技术,事先将含有大量报错信息的语料库整理为训练集,通过分词器将训练集中的数据处理为模型的输入,并且定义好训练所需的优化器、损失函数、评价指标,对深度学习模型进行训练,经过训练后的深度学习模型具备对报错信息的文本识别能力,该能力体现在能够识别出报错信息存在同义词、反义词、词序变换的情况,对报错信息的匹配结果计算相似度;
[0020]步骤42、将执行过程报错信息进行文本预处理,去掉和比对无关的内容,生成报错信息错误关键字,以此来提高智能比对的准确度;
[0021]步骤43、加载已训练好的深度学习模型及模型参数,使用分词器工具将报错信息错误关键字与ERROR库中的错误关键字进行比对,若比对成功,则获取ERROR库中匹配的解决方案及相关信息录入到智能调度表,待自动化测试任务全部结束以后发起智能调度,进入步骤5;若比对失败,则进入步骤6。
[0022]进一步的,所述步骤5具体包括:
[0023]步骤51、发起智能调度流程,获取智能调度表中对应的解决方案的处置脚本;所述处置脚本由ERROR库中对应的解决方案的相关处置脚本写入到智能调度表中,且在智能调度表的内容不为空时,发起智能调度;
[0024]步骤52、调用智能调度表中的处置脚本,若成功执行,则自动返回步骤1重新执行该测试案例,否则,若执行失败,则判定失败次数是否超过三次,若是,则从智能调度表移除该案例,待人工进行分析,结束调度流程,否则,返回步骤52。
[0025]进一步的,所述步骤6具体包括:
[0026]步骤61、将本次报错信息与RESULT库中的错误关键字进行比对,若匹配不成功,则进入步骤62,否则,进入步骤63;
[0027]步骤62、将该测试案例信息及执行报错信息添加到RESULT库,并添加记录至下载文件中,待所有失败测试案例自动处置完成后,供测试人员下载查看,提示测试人员进行手工处置,在自动化回归测试系统上生成一条待跟踪分析的缺陷记录;
[0028]步骤63、执行手工处置,手工处置完成后,通过手工重新发起的方本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种智能处置的软件自动化回归测试方法,其特征在于:包括如下步骤:步骤1、启动自动化回归测试;步骤2、根据测试案例所需数据检测数据模型是否有数据,若有,则直接进入步骤3,否则,调用数据脚本工具创建符合测试案例要求的数据后,进入步骤3;步骤3、根据给定的测试任务范围,选择测试环境和测试数据,自动执行测试案例,检查任务中的测试案例执行结果,判断是否需要执行智能比对,若是,则进入步骤4,否则,结束流程;步骤4、执行智能比对,将本次报错信息与预设的ERROR库中的报错信息进行比对,若匹配成功,则获取ERROR库中对应的解决方案生成智能调度表,进入步骤5,否则,进入步骤6;步骤5、发起智能调度流程,获取智能调度表中对应的解决方案的脚本进行处置,若处置成功后,则自动返回步骤1重新执行该测试案例,否则,进入步骤6;步骤6、将本次报错信息与RESULT库中的错误关键字进行比对,若匹配不成功,则将该测试案例信息及执行报错信息添加到RESULT库,提示测试人员进行手工处置,手工处置结束后,通过手工重新发起的方式,重新执行失败的测试案例,返回步骤1;所述RESULT库用于存储自动化案例回归测试中失败案例的已去重报错结果。2.根据权利要求1所述的方法,其特征在于:所述步骤3具体包括:根据给定的测试任务范围,选择测试环境和测试数据,自动执行测试案例,检查任务中的测试案例执行结果,若所述任务下测试案例均执行成功,则判为不需要执行智能比对,结束本次该测试案例的自动化回归测试;若所述任务执行完成,但任务中存在部分执行失败的案例,则判为需要执行智能比对,进入步骤4;若所述任务未执行完成,但案例执行失败率已达到设定的阈值,则判为需要执行智能比对,进入步骤4。3.根据权利要求1所述的方法,其特征在于:所述步骤4具体包括:步骤41、采用的深度学习技术,事先将含有大量报错信息的语料库整理为训练集,通过分词器将训练集中的数据处理为模型的输入,并且定义好训练所需的优化器、损失函数、评价指标,对深度学习模型进行训练,经过训练后的深度学习模型具备对报错信息的文本识别能力,该能力体现在能够识别出报错信息存在同义词、反义词、词序变换的情况,对报错信息的匹配结果计算相似度;步骤42、将执行过程报错信息进行文本预处理,去掉和比对无关的内容,生成报错信息错误关键字,以此来提高智能比对的准确度;步骤43、加载已训练好的深度学习模型及模型参数,使用分词器工具将报错信息错误关键字与ERROR库中的错误关键字进行比对,若比对成功,则获取ERROR库中匹配的解决方案及相关信息录入到智能调度表,待自动化测试任务全部结束以后发起智能调度,进入步骤5;若比对失败,则进入步骤6。4.根据权利要求1所述的方法,其特征在于:所述步骤5具体包括:步骤51、发起智能调度流程,获取智能调度表中对应的解决方案的处置脚本;所述处置脚本由ERROR库中对应的解决方案的相关处置脚本写入到智能调度表中,且在智能调度表的内容不为空时,发起智能调度;步骤52、调用智能调度表中的处置脚本,若成功执行,则自动返回步骤1重新执行该测试案例,否则,若执行失败,则判定失败次数是否超过三次,若是,则从智能调度表移除该案
例,待人工进行分析,结束调度流程,否则,返回步骤52。5.根据权利要求1所述的方法,其特征在于:所述步骤6具体包括:步骤61、将本次报错信息与RESULT库中的错误关键字进行比对,若匹配不成功,则进入步骤62,否则,进入步骤63;步骤62、将该测试案例信息及执行报错信息添加到RESULT库,并添加记录至下载文件中,待所有失败测试案例自动处置完成后,供测试人员下载查看,提示测试人员进行手工处置,在自动化回归测试系统上生成一条待跟踪分析的缺陷记录;步骤63、执行手工处置,手工处置完成后,通过手工重新发起的方式,重新执行失败的测试案例,返回步骤1;当重新执行失败的测试案例通过时...

【专利技术属性】
技术研发人员:廖根健苏晓波吴舒蓉邓娱婷王燕梅王驿林艳虾郭超年程舒晗
申请(专利权)人:福建省农村信用社联合社
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1