一种自动测试方法、装置及设备与流程



1.本技术涉及计算机技术领域,尤其涉及一种自动测试方法、装置及设备。


背景技术:



2.浏览器是互联网产品客户端的核心软件,也是网站访问时所需使用到的必备软件。目前,对于web端对页面增减和功能增减都涉及浏览器兼容性测试,浏览器相关测试案例数量较大,并且具有重复性。
3.在现有技术中,前端开发人员在进行多浏览器兼容测试时,一般采用部署公用机器提供多种浏览器,这种方式资源利用率低,整体资源消耗非常大,且手工测试较为耗时,并且测试周期较为紧急时容易忽视或遗漏。这种方式浪费大量硬件资源及开发人力资源,效率低,等效于零自动化。
4.综上所述,现有浏览器兼容测试方式,存在资源占用量大,测试结果可信度低,耗费技术人力资源等技术问题,亟需一种可以克服该些缺陷的技术方案。


技术实现要素:



5.有鉴于此,本技术提供了一种自动测试方法、装置及设备,旨在解放前端开发人员测试压力,提高前端整体兼容性测试质量及测试效率。
6.第一方面,本技术提供了一种自动测试方法,所述方法包括:
7.获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;
8.将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;
9.判断所述测试任务与所述样本测试用例的限制信息是否匹配,
10.响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。
11.可选的,所述判断所述测试任务与所述第一测试用例的限制信息是否匹配之后,还包括:
12.响应于测试任务与所述第一测试用例的限制信息不匹配,确定第二测试用例为样本测试用例,返回执行所述将获取到的测试用例作为样本测试用例,所述第二测试用例为测试用例集合中的、未被获取过的测试用例中的一个。
13.可选的,所述返回执行所述将获取到的测试用例作为样本测试用例之后,还包括:
14.响应于样本测试用例指示的测试用例均与所述测试任务不匹配,停止测试执行,生成执行失败提示信息。
15.可选的,所述根据样本测试用例和所述配置信息执行测试任务之后,还包括:
16.获取测试结果,根据所述测试结果生成测试报告,和/或,测试日志。
17.可选的,所述资源信息为测试环境的相关信息,所述配置信息为根据测试需求配
置的相关信息。
18.第二方面,本技术提供了一种自动测试装置,所述装置包括:
19.任务及用例获取模块,用于获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;
20.样本测试用例模块,用于将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;
21.匹配判断模块,用于判断所述测试任务与所述样本测试用例的限制信息是否匹配,
22.测试任务执行模块,用于响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。
23.可选的,所述装置还包括:
24.循环执行模块,用于响应于测试任务与所述第一测试用例的限制信息不匹配,确定第二测试用例为样本测试用例,返回执行所述将获取到的测试用例作为样本测试用例,所述第二测试用例为测试用例集合中的、未被获取过的测试用例中的一个。
25.可选的,所述装置还包括:
26.测试终止模块,用于响应于样本测试用例指示的测试用例均与所述测试任务不匹配,停止测试执行,生成执行失败提示信息。
27.可选的,所述追缴频率规则为:
28.测试结果转换模模块,用于获取测试结果,根据所述测试结果生成测试报告。
29.可选的,所述资源信息为测试环境的相关信息,所述配置信息为根据测试需求配置的相关信息。
30.第三方面,本技术提供了一种计算机设备,包括:处理器、存储器、系统总线;
31.所述处理器以及所述存储器通过所述系统总线相连;
32.所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-5任一项所述的自动测试方法。
33.本技术提供了一种自动测试方法、装置及设备。在执行所述方法时,获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;判断所述测试任务与所述样本测试用例的限制信息是否匹配,响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。由此,涉及新增浏览器时,只需修改测试配置信息即可,涉及测试环境变更只需更换测试资源信息,配置非常灵活,且测试引擎统一执行案例模块可以完全复用,有很好的扩展性,可极大地节省时间成本,提高测试效率。
附图说明
34.为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的
一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.图1为本技术实施例提供的自动测试方法的一种方法流程图;
36.图2为本技术实施例提供的自动测试方法的一种方法流程图;
37.图3为本技术实施例提供的自动测试装置的一种结构示意图。
具体实施方式
38.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
39.正如前文所述,针对本技术解决的浏览器兼容测试问题。在现有技术中,前端开发人员在进行多浏览器兼容测试时,一般采用以下三种技术方案:方案一:本地安装大量的虚拟机,一个浏览器一个虚拟机,这种方式极其消耗硬盘资源,大量占用cpu时间片,会造成进程拥堵,页面打开缓慢,并且面临无法同时打开多个虚拟机;方案二:使用ietester等模拟测试软件,虽相比较方式一占用资源比较少,但是测试结果不真实,模拟特性无法反应浏览器真实情况,方案三:部署公用机器提供多种浏览器,这种方式资源利用率低,整体资源消耗非常大。但是,发明人经过研究发现,在上述三种技术方案中,第一种方案依赖于本地安装大量虚拟机,然而目标测试浏览器数量大,故需建立大量虚拟机,这种方式非常消耗硬件资源,大量占用cpu资源,甚至造成服务器卡顿,进程拥堵,测试效率很低。方案二依赖于ietester等软件对浏览器兼容性做模拟测试,无法反应出浏览器真实兼容性问题,测试结果真实度较低。第三种方案依赖于大量部署公用机,专门安装各浏览器进行测试,这种方式浪费大量硬件资源及开发人力资源,效率低,等效于零自动化。
40.为了解决这一问题,在本技术实施例提供了一种自动测试方法、装置及设备,在执行所述方法时,获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;判断所述测试任务与所述样本测试用例的限制信息是否匹配,响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。由此,涉及新增浏览器时,只需修改测试配置信息即可,涉及测试环境变更只需更换测试资源信息,配置非常灵活,且测试引擎统一执行案例模块可以完全复用,有很好的扩展性。其次从测试用例、测试案例执行、测试结果回写均为自动执行,可节省人力成本,自动化脚本的执行效率更高,可极大地节省时间成本,提高测试效率。
41.本技术实施例提供的方法由后台系统执行,例如可以由计算机后台服务器执行。所述计算机后台服务器可以是一台服务器设备,也可以是由多台服务器组成的服务器集。
42.以下通过一个实施例,对本技术提供的自动测试方法进行说明。请参考图1,图1为本技术实施例所提供的自动测试方法的一种方法流程图,包括:
43.s101:获取第一测试用例和测试任务。
44.第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,资源信息为测试环境的相关信息,配置信息为根据测试需求配置的相关信息。配置信息包括配置相关的属性和约束条件,配置执行次数、随机数种子和测试使用的浏览器、测试案例集等,在实际应用场景中可以根据测试需求进行灵活配置。资源信息可以是浏览器的ip地址,登录用户和密码等。
45.在实际应用场景中,编写浏览器兼容性测试用例脚本,将测试用例归并到测试列表,形成测试用例集合。第一测试用例为测试用例集合中的任意一个测试用例。测试任务为本次方法流程中的目标任务。
46.s102:将获取到的测试用例确定为样本测试用例。
47.所述样本测试用例用于指示当前选中的测试用例进行匹配验证。可以将前述步骤s101中的第一测试用例,也可以是后续循环执行步骤中,当第一测试用例与目标测试任务不匹配时,轮询测试用例集合中其他测试用例,将测试用例集合中其他任何一个未被选中、未被识别为不匹配的测试用例确定为样本测试用例。
48.关于本方法流程中的循环过程,会在后续实施例二中进行详细说明,在此不做赘述。
49.s103:判断所述测试任务与所述样本测试用例的限制信息是否匹配。
50.获取样本测试用例的限制信息,判断资源信息和配置信息是否都与测试任务的基本信息匹配符合。在该步骤中,也隐含着获取测试任务的基本信息,例如测试任务的相关属性、测试需求等。
51.s104:响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。
52.当判断出测试任务和样本测试用例匹配,满足要求则执行,在实景应用过程中,实例化测试配置和测试资源,根据测试列表设置的配置和条件来统一调度执行测试用例脚本;满足要求的则执行。
53.由此,本实施例提供的方法流程中,当实际测试过程中,需要新增浏览器时,只需修改测试配置信息即可,涉及测试环境变更只需更换测试资源信息,配置非常灵活,且测试引擎统一执行案例模块可以完全复用,有很好的扩展性。其次从测试用例、测试案例执行、测试结果回写均为自动执行,可节省人力成本,自动化脚本的执行效率更高,可极大地节省时间成本,提高测试效率。
54.下面结合具体的应用场景,对本技术实施例提供的自动测试的方法进行详细介绍。参见图2,该图为本技术实施例提供的自动测试的方法的又一种流程示意图,包括:
55.s201:获取第一测试用例和测试任务。
56.第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例。
57.s202:将获取到的测试用例确定为样本测试用例。
58.样本测试用例用于指示当前选中的测试用例进行匹配验证。
59.s203:判断所述测试任务与所述样本测试用例的限制信息是否匹配。
60.获取样本测试用例的限制信息,判断资源信息和配置信息是否都与测试任务的基本信息匹配符合。在该步骤中,也隐含着获取测试任务的基本信息,例如测试任务的相关属
性、测试需求等。
61.s204:响应于测试任务与所述第一测试用例的限制信息不匹配,确定第二测试用例为样本测试用例。
62.当当前用于匹配的测试用例与目标测试任务不匹配,获取第二测试用例,即从测试用例集合中的选取一个未被选中、未被进行匹配比对过的测试用例,所述第二测试用例为测试用例集合中的、未被获取过的测试用例中的一个。
63.返回执行所述将获取到的测试用例作为样本测试用例,返回执行步骤s202。
64.响应于测试任务与所述样本测试用例的限制信息匹配,执行步骤s205;
65.响应于样本测试用例指示的测试用例均与所述测试任务不匹配,执行步骤s207。
66.s205:根据样本测试用例和所述配置信息执行测试任务。
67.当判断出测试任务和样本测试用例匹配,满足要求则执行,在实景应用过程中,实例化测试配置和测试资源,根据测试列表设置的配置和条件来统一调度执行测试用例脚本;满足要求的则执行。
68.s206:获取测试结果,根据所述测试结果生成测试报告,和/或,测试日志。
69.自动化脚本执行完成后,自动获取交易返回结果和后台交易日志,可以将测试结果写入数据文件,可以形成测试报告。
70.当前流程结束,不再进行后续步骤。
71.s207:停止测试执行,生成执行失败提示信息。
72.轮询用例集合中所有的测试用例,如果没有一个测试用例与当前测试任务匹配,则终止本次测试流程。
73.在一些可以实现的方式中,可以获取当前时间,获取各个测试用例的匹配不相符内容,根据当前不匹配内容以及测试任务生成测试失败表单,所述表单表征当前测试失败原因,并对当前操作者的用户端弹出消息框,用于指示当前测试失败。
74.在本实施例中,通过本方法,可以将测试用例集合中的测试用例全部轮询一遍,获取与当前测试任务目标相符的测试用例,可以实现自动化测试,并且保证测试的准确性以及测试结果与测试目标的高度对应性。可以根据不同的测试需求,可灵活配置测试案例集、案例执行次数和测试使用的浏览器。编写自动化测试脚本,根据测试配置和测试资源调用自动化测试脚本执行案例,同时支持多线程并发测试
75.以上为本技术实施例提供一种自动测试方法的一些具体实现方式,基于此,本技术还提供了对应的装置。下面将从功能模块化的角度对本技术实施例提供的装置进行介绍。
76.请参考图3,图3为本技术实施例所提供的一种自动测试装置的结构示意图。
77.本实施例中,该装置可以包括:
78.任务及用例获取模块301,用于获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;
79.样本测试用例模块302,用于将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;
80.匹配判断模块303,用于判断所述测试任务与所述样本测试用例的限制信息是否
匹配,
81.测试任务执行模块304,用于响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。
82.可选的,所述装置还包括:
83.循环执行模块,用于响应于测试任务与所述第一测试用例的限制信息不匹配,确定第二测试用例为样本测试用例,返回执行所述将获取到的测试用例作为样本测试用例,所述第二测试用例为测试用例集合中的、未被获取过的测试用例中的一个。
84.可选的,所述装置还包括:
85.测试终止模块,用于响应于样本测试用例指示的测试用例均与所述测试任务不匹配,停止测试执行,生成执行失败提示信息。
86.可选的,所述装置还包括:
87.测试结果转换模模块,用于获取测试结果,根据所述测试结果生成测试报告。
88.本技术实施例还提供了对应的设备以及计算机存储介质,用于实现本技术实施例提供的方案。
89.其中,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行本技术任一实施例所述的自动测试方法。
90.所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现本技术任一实施例所述的自动测试方法。
91.本技术实施例中提到的“第一”、“第二”(若存在)等名称中的“第一”、“第二”只是用来做名字标识,并不代表顺序上的第一、第二。
92.通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本技术的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,rom)/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本技术各个实施例或者实施例的某些部分所述的方法。
93.以上对本技术所提供的一种自动测试方法、装置及设备进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以对本技术进行若干改进和修饰,这些改进和修饰也落入本技术权利要求的保护范围内。
94.本发明提供的一种自动测试方法、装置及设备可用于物联网领域或网络安全领域或或金融领域,例如,可用于网络安全领域中的web端浏览器兼容性自动化测试平台应用场景。上述仅为示例,并不对本发明提供的一种自动测试方法、装置及设备的应用领域进行限定。
95.还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意
在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
96.以上所述仅为本技术的较佳实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。

技术特征:


1.一种自动测试方法,其特征在于,所述方法包括:获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;判断所述测试任务与所述样本测试用例的限制信息是否匹配,响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。2.根据权利要求1所述的方法,其特征在于,所述判断所述测试任务与所述第一测试用例的限制信息是否匹配之后,还包括:响应于测试任务与所述第一测试用例的限制信息不匹配,确定第二测试用例为样本测试用例,返回执行所述将获取到的测试用例作为样本测试用例,所述第二测试用例为测试用例集合中的、未被获取过的测试用例中的一个。3.根据权利要求2所述的方法,其特征在于,所述返回执行所述将获取到的测试用例作为样本测试用例之后,还包括:响应于样本测试用例指示的测试用例均与所述测试任务不匹配,停止测试执行,生成执行失败提示信息。4.根据权利要求1所述的方法,其特征在于,所述根据样本测试用例和所述配置信息执行测试任务之后,还包括:获取测试结果,根据所述测试结果生成测试报告,和/或,测试日志。5.根据权利要求1所述的方法,其特征在于,所述资源信息为测试环境的相关信息,所述配置信息为根据测试需求配置的相关信息。6.一种自动测试装置,其特征在于,所述装置包括:任务及用例获取模块,用于获取第一测试用例和测试任务,所述第一测试用例为包括限制信息的测试用例,所述限制信息包括资源信息和配置信息,测试用例集合中的一个测试用例;样本测试用例模块,用于将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;匹配判断模块,用于判断所述测试任务与所述样本测试用例的限制信息是否匹配,测试任务执行模块,用于响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。7.根据权利要求6所述的装置,其特征在于,所述装置还包括:循环执行模块,用于响应于测试任务与所述第一测试用例的限制信息不匹配,确定第二测试用例为样本测试用例,返回执行所述将获取到的测试用例作为样本测试用例,所述第二测试用例为测试用例集合中的、未被获取过的测试用例中的一个。8.根据权利要求7所述的装置,其特征在于,所述装置还包括:测试终止模块,用于响应于样本测试用例指示的测试用例均与所述测试任务不匹配,停止测试执行,生成执行失败提示信息。9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
测试结果转换模模块,用于获取测试结果,根据所述测试结果生成测试报告。10.一种计算机设备,其特征在于,包括:处理器、存储器、系统总线;所述处理器以及所述存储器通过所述系统总线相连;所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-5任一项所述的自动测试方法。

技术总结


本申请公开了一种自动测试方法、装置及设备,可应用于人工智能领域、网络安全领域或金融领域。通过获取第一测试用例和测试任务,测试用例集合中的一个测试用例;将获取到的测试用例确定为样本测试用例,所述样本测试用例用于指示当前选中的测试用例进行匹配验证;判断所述测试任务与所述样本测试用例的限制信息是否匹配,响应于测试任务与所述样本测试用例的限制信息匹配,根据样本测试用例和所述配置信息执行测试任务。由此,涉及新增浏览器时,只需修改测试配置信息即可,涉及测试环境变更只需更换测试资源信息,配置非常灵活,且测试引擎统一执行案例模块可以完全复用,有很好的扩展性,可极大地节省时间成本,提高测试效率。提高测试效率。提高测试效率。


技术研发人员:

青兰芳 廖鹏

受保护的技术使用者:

中国银行股份有限公司

技术研发日:

2022.08.26

技术公布日:

2022/11/22

本文发布于:2024-09-23 19:15:28,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/5536.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:测试   所述   样本   信息
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议