一种分布式自动化测试方法及系统技术方案

技术编号:39808590 阅读:12 留言:0更新日期:2023-12-22 02:43
本发明专利技术提供一种分布式自动化测试方法及系统,属于程序测试技术领域,具体包括:获取测试用例对应的软件系统的模块数量以及功能数量,并结合测试用例在测试过程中的数据量以及流程复杂度进行测试用例的测试复杂度的确定,基于历史测试优先值

【技术实现步骤摘要】
一种分布式自动化测试方法及系统


[0001]本专利技术属于程序测试
,尤其涉及一种分布式自动化测试方法及系统


技术介绍

[0002]随着软件系统的日益复杂,单一的采用某一测试终端进行软件系统的测试导致测试的效率无法满足要求,因此分布式自动化测试方式应用而生,通过对多个的测试终端的协同调度在保证测试精度的基础上,可以极大的提升测试效率

[0003]现有技术方案中给出了很多基于分布式自动化系统的测试终端的协同优化调度方法,具体的在专利技术专利
CN201610111905.5《
一种分布式自动化测试方法及系统

中通过对环境状态为空闲的客户端的识别,从而为客户端发送指定个数的测试用例,从而启动预先安装的测试程序对测试用例进行测试并将测试结果反馈至数据库,但是却存在以下技术问题:
1、
在现有技术方案中,由于不同的客户端的处理能力以及测试用例的复杂性的差异,不同的客户端在处理不同的测试用例的耗时也存在一定的差异,因此若不能根据测试用例的复杂性以及客户端的处理能力的差异进行差异性的测试用例的分配,则无法保证测试的效率

[0004]2、
在现有的技术方案中,由于不同的测试用例涉及到的更新的软件系统的软件模块的数量以及更新功能的数量的差异,因此不同的测试用例的测试优先级存在一定程度的差异,因此在进行测试用例的分配时,若不考虑不同的测试用例的测试优先级,则同样无法保证测试的效率

[0005]针对上述技术问题,本专利技术提供了一种分布式自动化测试方法及系统


技术实现思路

[0006]为实现本专利技术目的,本专利技术采用如下技术方案:根据本专利技术的一个方面,提供了一种分布式自动化测试方法

[0007]一种分布式自动化测试方法,其特征在于,具体包括:
S1
获取测试用例对应的软件系统的模块数量以及功能数量,并结合所述测试用例在测试过程中的数据量以及流程复杂度进行所述测试用例的测试复杂度的确定;
S2
根据测试客户端的运行状态进行空闲客户端的确定,通过不同的空闲客户端的运行状态以及测试用例的测试复杂度进行不同的测试用例在不同的空闲客户端的处理耗时的确定,将处理耗时小于预设时间的空闲客户端作为测试用例的匹配客户端;
S3
获取所述测试用例对应的软件系统的更新软件模块以及更新软件功能,并通过不同的更新软件模块以及更新软件功能的历史使用数据进行所述测试用例的历史测试优先值的确定,通过不同的更新软件模块以及更新软件功能的更新情况进行所述测试用例的更新测试优先值的确定,并基于所述历史测试优先值

更新测试优先值以及所述测试用例的测试复杂度进行所述测试用例的测试优先值的确定;
S4
基于所述测试优先值进行所述测试用例的分配顺序的确定,并以所述测试耗时最短以及所述测试用例的匹配客户端为约束条件,将所述测试用例分配至所述匹配客户端进行自动化测试得到测试结果

[0008]本专利技术的有益效果在于:
1、
通过进行测试用例的测试复杂度的确定,避免了原有的简单的在不同的客户端无序测试导致的测试效率较低的技术问题,同时通过测试复杂度的评估,也为进一步根据不同的测试用例的测试复杂度从而动态的进行客户端的分配奠定了基础,提升了测试的效率

[0009]2、
通过进行不同的测试用例在不同的空闲客户端的处理耗时以及测试用例的匹配客户端的确定,既实现了对不同的测试用例的处理耗时的准确评估,同时通过匹配客户端的评估,也避免了由于某一空闲客户端的耗时过长导致的测试效率过低的技术问题,提升了整体的测试效率

[0010]3、
通过基于历史测试优先值

更新测试优先值以及测试用例的测试复杂度进行测试用例的测试优先值的确定,不仅考虑到不同的测试用例的测试复杂度,同时还考虑到与软件系统的更新模块以及更新功能的关联关系,进一步提升了测试用例的分配准确性

[0011]进一步的技术方案在于,所述测试用例对应的软件系统的模块数量以及功能数量根据所述测试用例的测试目标和测试流程进行确定

[0012]进一步的技术方案在于,所述测试用例的流程复杂度根据所述测试用例在测试过程中的数据的流转次数进行确定,其中所述测试用例在测试过程中的数据的流转次数越多,则所述测试用例的流程复杂度越高

[0013]进一步的技术方案在于,通过不同的空闲客户端的运行状态以及测试用例的测试复杂度进行不同的测试用例在不同的空闲客户端的处理耗时的确定,具体包括:基于所述不同的空闲客户端的运行状态进行不同的空闲客户端的硬件使用占有率的确定,并结合所述空闲客户端的硬件配置进行所述空闲客户端的处理能力的确定,通过所述空闲客户端的处理能力以及测试用例的测试复杂度进行所述测试用例在所述空闲客户端的处理耗时的确定

[0014]进一步的技术方案在于,所述预设时间根据所述测试用例的测试复杂度进行确定,具体的根据所述测试用例的测试复杂度越高,则所述预设时间越长

[0015]进一步的技术方案在于,所述测试用例的测试优先值的确定的方法为:根据所述测试用例的历史测试优先值以及更新测试优先值进行所述测试用例的综合测试优先值的确定;基于所述测试用例的测试复杂度进行所述测试用例的测试优先级的确定;基于所述测试用例的测试优先级以及综合测试优先值进行所述测试用例的测试优先值的确定

[0016]进一步的技术方案在于,根据所述测试用例的历史测试优先值以及更新测试优先值进行所述测试用例的综合测试优先值的确定,具体包括:根据所述测试用例的历史测试优先值以及更新测试优先值的最大值进行所述测试用例的综合测试优先值的确定

[0017]第二方面,本专利技术提供了一种分布式自动化测试系统,采用上述的一种分布式自
动化测试方法,其特征在于,具体包括:复杂度评估模块,耗时评估模块,测试顺序确定模块,分配模块;其中所述复杂度评估模块负责获取测试用例对应的软件系统的模块数量以及功能数量,并结合所述测试用例在测试过程中的数据量以及流程复杂度进行所述测试用例的测试复杂度的确定;所述耗时评估模块负责根据测试客户端的运行状态进行空闲客户端的确定,通过不同的空闲客户端的运行状态以及测试用例的测试复杂度进行不同的测试用例在不同的空闲客户端的处理耗时的确定,将处理耗时小于预设时间的空闲客户端作为测试用例的匹配客户端;所述测试顺序确定模块负责获取所述测试用例对应的软件系统的更新软件模块以及更新软件功能,并通过不同的更新软件模块以及更新软件功能的历史使用数据进行所述测试用例的历史测试优先值的确定,通过不同的更新软件模块以及更新软件功能的更新情况进行所述测试用例的更新测试优先值的确定,并基于所述历史测试优先值

更新测试优先值以及所述测试用本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种分布式自动化测试方法,其特征在于,具体包括:获取测试用例对应的软件系统的模块数量以及功能数量,并结合所述测试用例在测试过程中的数据量以及流程复杂度进行所述测试用例的测试复杂度的确定;根据测试客户端的运行状态进行空闲客户端的确定,通过不同的空闲客户端的运行状态以及测试用例的测试复杂度进行不同的测试用例在不同的空闲客户端的处理耗时的确定,将处理耗时小于预设时间的空闲客户端作为测试用例的匹配客户端;获取所述测试用例对应的软件系统的更新软件模块以及更新软件功能,并通过不同的更新软件模块以及更新软件功能的历史使用数据进行所述测试用例的历史测试优先值的确定,通过不同的更新软件模块以及更新软件功能的更新情况进行所述测试用例的更新测试优先值的确定,并基于所述历史测试优先值

更新测试优先值以及所述测试用例的测试复杂度进行所述测试用例的测试优先值的确定;基于所述测试优先值进行所述测试用例的分配顺序的确定,并以所述测试耗时最短以及所述测试用例的匹配客户端为约束条件,将所述测试用例分配至所述匹配客户端进行自动化测试得到测试结果
。2.
如权利要求1所述的分布式自动化测试方法,其特征在于,所述测试用例对应的软件系统的模块数量以及功能数量根据所述测试用例的测试目标和测试流程进行确定
。3.
如权利要求1所述的分布式自动化测试方法,其特征在于,所述测试用例的流程复杂度根据所述测试用例在测试过程中的数据的流转次数进行确定,其中所述测试用例在测试过程中的数据的流转次数越多,则所述测试用例的流程复杂度越高
。4.
如权利要求1所述的分布式自动化测试方法,其特征在于,所述测试用例的测试复杂度的确定的方法为:获取所述测试用例所对应的软件系统的模块数量,并判断所述测试用例所对应的软件系统的模块数量是否在预设数量范围内,若是,则进入下一步骤,若否,则通过预设测试复杂度进行所述测试用例的测试复杂度的确定;获取所述测试用例所对应的软件系统的功能数量,并判断所述测试用例所对应的软件系统的功能数量是否在预设数量范围内,若是,则进入下一步骤,若否,则通过预设测试复杂度进行所述测试用例的测试复杂度的确定;获取所述测试用例在测试过程中的数据量,并判断所述测试用例在测试过程中的数据量是否在预设数据量范围内,若是,则进入下一步骤,若否,则通过预设测试复杂度进行所述测试用例的测试复杂度的确定;通过所述测试用例所对应的软件系统的功能数量进行软件系统的不同的模块的功能数量的确定,并基于所述测试用例所对应的软件系统的不同的模块的功能数量进行筛选模块的确定,利用所述筛选模块的数量以及筛选模块的功能数量

模块数量以及功能数量进行所述测试用例的测试范围复杂度的确定;基于所述测试用例在测试过程中的数据量进行所述测试用例在测试过程中的不同数据流转次数的数据量的确定,并通过所述数据流转次数以及不同的数据流转次数的数据量进行所述流程复杂度的确定,基于所述流程复杂度以及测试用例在测试过程中的数据量进行所述测试用例的测试流程复杂度的确定;获取所述测试用例的输入数据量以及测试目标,并结合所述测试用例的测试流程复杂
度以及测试范围复杂度进行所述测试用例的测试复杂度的确定
。5.
如权利要求4所述的分布式自动化测试方法,其特征在于,所述测试用例的测试复杂度的取值范围在0到1之间,其中所述测试用例的测试复杂度越高,则所述测试用例越复杂
。6.
如权利要求1所述的分布式自动化测试方法,其特征在于,通过不同的空闲客户端的运行状态以及测试用例的测试复杂度进行不同的测试用例在不同的空闲客户端的处理耗时的确定,具体包括:基于所述不同的空闲客户端的运行状态进行不同的空闲客户端的硬件使用占有率的确定,并结合所述空闲客户端的硬件配置进行所述空闲客户端的处理能力的确定,通过所述空闲客户端的处理能力以及测试用例的测试复杂度进行所述测试用例在所述空闲客户端的处理耗时的确定
。7.
如权利要求...

【专利技术属性】
技术研发人员:张静陈果王俊俊石杰陶嘉驹张雪陈煜
申请(专利权)人:杭银消费金融股份有限公司
类型:发明
国别省市:

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

1