掌桥专利:专业的专利平台
掌桥专利
首页

用例测试处理方法、装置、服务器及可读存储介质

文献发布时间:2023-06-19 11:35:49


用例测试处理方法、装置、服务器及可读存储介质

技术领域

本申请涉及互联网业务程序框架测试领域,具体而言,涉及一种用例测试处理方法、装置、服务器及可读存储介质。

背景技术

在互联网时代复杂的分布式架构体系下,业务流程变得越来越复杂,测试用例作为基础的质量保障手段,能够帮助测试和开发人员发现业务系统所存在的问题。用例(英文:Use Case),或译使用案例、用况,是软件工程或系统工程中对系统如何反应外界请求的描述,是一种通过用户的使用场景来获取需求的手段。每个用例提供了一个或多个场景,该场景说明了系统是如何与用户或其它系统互动,一个链路计划中可以包括一组用例。现有的测试框架包括Robotframework,Jmeter,Postman等一系列的测试开发框架。当前的测试方式是基于本地文件或者特定接口测试,不支持协同操作,导致测试与维护业务的链路计划的效率低。

发明内容

本申请实施例的目的在于提供一种用例测试处理方法、装置、服务器及可读存储介质,能够改善测试与维护链路计划的效率低的问题。

为了实现上述目的,本申请的实施例通过如下方式实现:

第一方面,本申请实施例提供一种用例测试处理方法,所述方法包括:

基于测试请求,从业务域管理数据库获取与所述测试请求对应的至少一个目标业务域,所述目标业务域包括至少一个目标用例;

根据所述至少一个目标业务域及预设执行顺序创建链路计划,所述链路计划包括与所述预设执行顺序对应的至少一组所述目标用例;

执行所述链路计划,得到测试结果,所述测试结果包括所述链路计划所包括的所述目标用例的数量及所述目标用例的执行结果。

在上述的实施方式中,基于业务域管理数据库,可以共享业务域,方便用户根据需求从业务域管理数据库中灵活选取相应的业务域以形成链路计划,方便链路计划的测试,进而有利于提高测试与维护链路计划的效率。

结合第一方面,在一些可选的实施方式中,在从业务域管理数据库获取与所述测试请求对应的至少一个目标业务域之前,所述方法还包括:

基于用例管理数据库中的用例,创建至少一个业务域,所述至少一个业务域包括所述目标业务域;

将所述至少一个业务域存储于所述业务域管理数据库。

结合第一方面,在一些可选的实施方式中,在从业务域管理数据库获取与所述测试请求对应的至少一个目标业务域之前,所述方法还包括:

基于用例创建策略,创建至少一个用例,所述至少一个用例包括所述目标用例;

将所述至少一个用例存储于所述用例管理数据库。

结合第一方面,在一些可选的实施方式中,所述方法还包括:

基于用户终端发送的操作请求,对与所述操作请求对应的目标用例或目标业务域或链路计划进行处理操作,得到响应结果,所述目标用例包括手动用例、接口用例、数据源用例中的任一种,所述处理操作包括对所述目标用例或所述目标业务域或所述链路计划进行增加、删除、修改、查询操作中的任一种。

结合第一方面,在一些可选的实施方式中,当所述至少一个目标业务域的数量为多个目标业务域,根据所述至少一个目标业务域及预设执行顺序创建链路计划,包括:

将所述多个目标业务域按照所述预设执行顺序进行串联,得到所述链路计划。

结合第一方面,在一些可选的实施方式中,所述方法还包括:

根据用户终端发送的获取请求,向所述用户终端输出工具平台中与所述获取请求对应的目标用例。

结合第一方面,在一些可选的实施方式中,所述方法还包括:

基于标记请求,对所述链路计划中的至少部分所述目标用例设置表征自动化工具的标志;

将具有所述标志的目标用例与工具平台关联,用于供用户终端从所述工具平台获取具有所述标志的目标用例。

第二方面,本申请还提供一种用例测试处理装置,所述装置包括:

获取单元,基于测试请求,从业务域管理数据库获取与所述测试请求对应的至少一个目标业务域,所述目标业务域包括至少一个目标用例;

创建单元,根据所述至少一个目标业务域及预设执行顺序创建链路计划,所述链路计划包括与所述预设执行顺序对应的至少一组所述目标用例;

测试单元,用于执行所述链路计划,得到测试结果,所述测试结果包括所述链路计划所包括的所述目标用例的数量及所述目标用例的执行结果。

第三方面,本申请还提供一种服务器,所述服务器包括相互耦合的处理器及存储器,所述存储器内存储计算机程序,当所述计算机程序被所述处理器执行时,使得所述服务器执行上述的方法。

第四方面,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行上述的方法。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的服务器与用户终端的通信连接示意图。

图2为本申请实施例提供的用例测试处理方法的流程示意图。

图3为本申请实施例提供的测试应用场景的示意图。

图4为本申请实施例提供的用例测试处理装置的框图。

图标:10-服务器;20-用户终端;200-用例测试处理装置;210-获取单元;220-创建单元;230-测试单元。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

申请人发现,现有自动化测试框架的测试用例,都是基于文件操作。Robotframework工具是基于txt文本文件;Postman工具是基于json格式的文件;Jmeter是基于jmx(xml)格式的文件。基于文件的操作不适合进行多人协同和用例维护,导致测试的效率低。

鉴于上述问题,本申请申请人提出以下实施例以解决上述问题。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

请参照图1,本申请提供的用户终端20可以通过网络与服务器10建立通信连接,并通过网络进行数据交互。其中,服务器10可以与多个用户终端20进行数据交互,以实现分布式协同处理。例如,多个操作人员可以通各自的用户终端20控制服务器10进行用例测试与链路计划测试,且可以进行协同操作,以提高测试与维护的效率。其中,用户终端20可以是但不限于个人电脑、平板电脑等。

服务器10可以包括处理模块及存储模块。存储模块内存储计算机程序,当计算机程序被处理模块执行时,使得服务器10能够执行下述方法中的各步骤。

请参照图2,本申请还提供一种用例测试处理方法,可以应用于上述的服务器10,由服务器10执行或实现方法的各步骤,方法可以包括如下步骤:

步骤S110,基于测试请求,从业务域管理数据库获取与所述测试请求对应的至少一个目标业务域,所述目标业务域包括至少一个目标用例;

步骤S120,根据所述至少一个目标业务域及预设执行顺序创建链路计划,所述链路计划包括与所述预设执行顺序对应的至少一组所述目标用例;

步骤S130,执行所述链路计划,得到测试结果,所述测试结果包括所述链路计划所包括的所述目标用例的数量及所述目标用例的执行结果。

在上述的实施方式中,基于业务域管理数据库,操作人员之间可以共享业务域,方便用户根据需求从业务域管理数据库中灵活选取相应的业务域以形成链路计划,方便链路计划的测试,进而有利于提高测试与维护链路计划的效率。

下面将对方法的各步骤进行详细阐述,如下:

在步骤S110之前,所述方法可以包括:

基于用例创建策略,创建至少一个用例,所述至少一个用例包括所述目标用例;

将所述至少一个用例存储于所述用例管理数据库。

在步骤S110之前,所述方法还可以包括:

基于用例管理数据库中的用例,创建至少一个业务域,所述至少一个业务域包括所述目标业务域;

将所述至少一个业务域存储于所述业务域管理数据库。

请参照图3,用例管理数据库可以存储一个或多个用例。业务域管理数据库可以存储一个或多个业务域。一个链路计划可以包括一个或多个业务域。用户可以通过用户终端20远程创建用例、业务域,并存储在服务器10中。用例M与业务域N中的M、N可理解为编号,M、N为整数,可以根据实际情况进行确定。链路执行引擎可以执行链路计划中的每个用例,用于检测链路计划是否存在异常。用例执行引擎可以执行单个用例,用于检测单个用例的程序或脚本是否存在异常。其中,链路执行引擎与用例执行引擎的执行方式为本领域技术人员熟知,这里不再赘述。

用例的类型可以包括手动用例、接口用例、数据源用例等。例如,手动用例为需要操作人员进行人工操作的用例,可以根据实际情况进行确定(例如,审核流程中的人工确认用例)。接口用例可以是但不限于http-post、http-get等用例。数据源用例可以是但不限于MySQL、MongoDB、Redis、ElasticSearch等用例,为本领域技术人员熟知。

一个业务域通常包括一组用例,一组用例中可以包括一个或多个用例,用于配合实现一个业务或一个流程。示例性地,登录是一个业务域(可以称为“单点登录业务域”),可以包括有登录用例;用户信息是另外一个业务域(可以称为“用户信息管理业务域”),可以包括用户信息用例。

用例创建策略可以根据实际情况进行设置,例如,可以将实现相应业务功能(如实现登陆操作功能)的自动化程序脚本封装成用例,这里对用例创建策略不作具体限定。在本实施例中,多个用户可以通过用户终端20,根据需求灵活地创建相应的用例,并将用例存储在服务器10的用例管理数据库中,以及创建相应的业务域,并将业务域存储在服务器10的业务域管理数据库中。其中,每个用例具有相应的用例标识,每个业务域可以具有相应的业务域标识,用例标识、业务标识可以通过不同类的ID进行区分,可以根据实际情况进行灵活设置。

其中,一个业务域所包括的用例可理解为:一个业务域可以关联一组用例的ID,而无需直接关联用例的程序或脚本。类似地,一个链路计划可以关联一组业务域的ID,而无需直接与业务域中的用例的程序或脚本关联。即,一个业务域包括一组用例的ID,业务域无需与用例的程序强关联,而是与用例的ID关联;链路计划无需与用例的程序强关联,而是与业务域的ID关联。

业务域与用例的ID关联后,用户基于服务器10获取一个业务域中的用例的过程可以为:服务器10基于与该业务域的ID,从业务域管理数据库中,查找到与该业务域关联的所有用例ID(即为目标用例的目标ID),然后基于目标ID,在用例管理数据库中获取与目标ID相同的用例,以作为该业务域的用例。基于此,当对用例进行修改操作(如升级)后,若该用例在已有的业务域或链路计划中,则业务域与链路计划中的该用例便是已经更新的用例,无需单独再对业务域或链路计划中的用例进行更新,从而简化业务域、链路计划的维护更新成本。

类似的,在维护期间,操作人员在对业务域进行修改后,包含该业务域的链路计划便自动完成该业务域的修改,从而简化链路计划的维护成本。

在步骤S110中,操作人员可以通过用户终端20,根据实际测试需求生成测试请求,然后将测试请求发送至服务器10。服务器10在接收到测试请求后,可以基于测试请求中携带的信息,从服务器10自身的业务域管理数据库中确定与测试请求信息对应的目标业务域。

可理解地,业务域管理数据库中,预先存储有多个(或多类)业务域,不同的业务域具有不同的标识。测试请求中,可以携带当前测试任务中的业务域的标识信息,服务器10可以基于测试请求中的标识信息,从业务域管理数据库中查找到与测试请求中的标识信息相同的业务域,该业务域即为目标业务域。目标业务域的数量可以为一个或多个,这里不作具体限定。

需要说明的是,当前测试任务可以根据实际情况进行灵活设置,与当前测试任务对应的业务域即为目标业务域,可以根据实际情况进行灵活设置,这里不作具体限定。

在步骤S120中,若目标业务域只有一个,则该目标业务域即为链路计划。当所述至少一个目标业务域的数量为多个目标业务域,且业务域之间相互依赖,步骤S120可以包括:

将所述多个目标业务域按照所述预设执行顺序进行串联,得到所述链路计划。

其中,预设执行顺序可以根据实际情况进行灵活设置。例如,目标业务域分别为上述的“单点登录业务域”、“用户信息管理业务域”,则两业务域存在依赖关系。通常而言,需要先执行“单点登录业务域”中的用例,在执行完“单点登录业务域”中的所有用例后,再执行“用户信息管理业务域”中的用例,即,需要将“单点登录业务域”、“用户信息管理业务域”串联,且预设执行顺序为先执行“单点登录业务域”,再执行用户信息管理业务域”,基于该预设执行顺序串联“单点登录业务域”、“用户信息管理业务域”,如此,便可以形成链路计划。

在步骤S130中,服务器10可以通过链路执行引擎,执行链路计划中的每个用例,从而得到测试结果。其中,链路执行引擎用于运行链路计划中每个用例对应的程序或脚本。测试结果可以包括链路计划中的所有用例的数量、每个用例是否测试通过的结果等数据。可理解地,若单个用例的测试未通过,则表示该用例的程序或脚本存在异常。若单个用例的测试通过,则表示该用例的程序或脚本均正常。

作为一种可选的实施方式,所述方法还包括:

基于用户终端20发送的操作请求,对与所述操作请求对应的目标用例或目标业务域或链路计划进行处理操作,得到响应结果,所述目标用例包括手动用例、接口用例、数据源用例中的任一种,所述处理操作包括对所述目标用例或所述目标业务域或所述链路计划进行增加、删除、修改、查询操作中的任一种。

在本实施例中,操作请求可以根据实际情况进行区分,可以包括但不限于增加请求、删除请求、修改请求、查询请求中的任一种,对应的操作分别为进行增加、删除、修改、查询操作。

例如,增加操作可以是对目标用例增加新的子功能。例如,对“单点登录用例”增加“扫描二维码登陆”这一子功能,以对“单点登录用例”进行升级。对“用户信息用例”增加“用户信息验证”这一子功能,例如,比如,增加会员验证操作,以对“用户信息用例”进行升级。

另外,增加操作还可以在指定业务域中增加一个或多个用例,或者在链路计划中,增加一个或多个业务域。可理解地,指定业务可以根据实际情况进行灵活确定,增加操作可以根据实际情况进行灵活设置,这里不作具体限定。

在本实施例中,删除操作可以是删除用例中的部分子功能,或者删除整个用例,或者删除指定业务域中的部分用例,或删除整个指定业务域,或者删除链路计划中的部分业务域,或删除整个链路计划。可理解地,删除操作可以根据实际情况进行灵活设置,这里不作具体限定。

在本实施例中,修改操作可以是将用例中的一子功能修改为另一子功能,例如,将“单点登录用例”中的“账号密码登陆”修改为“扫描二维码登陆”。或者,修改操作可以是对数据源用例所对应的数据源中的数据进行修改。另外,修改操作还可以对业务域中的部分用例进行替换或修改,以及对链路计划中的业务域进行替换或修改。修改操作可以根据实际情况进行灵活确定,这里不作具体限定。

在本实施例中,查询操作可以用于查询指定用例、指定业务域等,可以根据实际情况进行灵活设置。

在本实施例中,进行增加、删除、修改、查询操作的用户通常为经过权限认证,且认证通过的用户,权限认证的过程为本领域技术人员熟知,这里不再赘述。通过增加、删除、修改、查询操作,服务器10可以自动实现分布式协同处理,并同步修改后的用例、业务域、链路计划,如此,有利于降低维护成本,简化操作流程,提高维护效率。

作为一种可选的实施方式,所述方法还包括:

基于标记请求,对所述链路计划中的至少部分所述目标用例设置表征自动化工具的标志;

将具有所述标志的目标用例与工具平台关联,用于供用户终端20从所述工具平台获取具有所述标志的目标用例。

示例性地,包含“单点登录业务域”、“用户信息管理业务域”的链路计划,经过服务器10测试后,且测试通过后,用户可以通过用户终端20,以标记请求的方式,通过服务器10将“单点登录业务域”、“用户信息管理业务域”标记为“自动化工具”,然后在服务器10的工具平台关联“单点登录业务域”、“用户信息管理业务域”,如此,自动化平台可以呈现“单点登录业务域”、“用户信息管理业务域”,其他用户便可以在工具平台获取“单点登录业务域”、“用户信息管理业务域”,以作为通过检测的自动化工具进行使用。

作为一种可选的实施方式,所述方法还包括:

根据用户终端20发送的获取请求,向所述用户终端20输出工具平台中与所述获取请求对应的目标用例。

可理解地,工具平台所呈现的用例通常为经过测试且测试通过的用例,可以直接供用户使用。用户从工件平台获取已有的目标用例,如此,无需再创建用例,也无需检测用例,从而简化操作流程,提高检测效率。

请参照图4,本申请实施例还提供一种用例测试处理装置200,可以应用于上述的服务器10中,用于执行方法中的各步骤。用例测试处理装置200包括至少一个可以软件或固件(Firmware)的形式存储于存储模块中或固化在服务器10操作系统(Operating System,OS)中的软件功能模块。处理模块用于执行存储模块中存储的可执行模块,例如用例测试处理装置200所包括的软件功能模块及计算机程序等。

用例测试处理装置200可以包括获取单元210、创建单元220及测试单元230,可以执行的操作步骤可以如下:

获取单元210,基于测试请求,从业务域管理数据库获取与所述测试请求对应的至少一个目标业务域,所述目标业务域包括至少一个目标用例;

创建单元220,根据所述至少一个目标业务域及预设执行顺序创建链路计划,所述链路计划包括与所述预设执行顺序对应的至少一组所述目标用例;

测试单元230,用于执行所述链路计划,得到测试结果,所述测试结果包括所述链路计划所包括的所述目标用例的数量及所述目标用例的执行结果。

可选地,在获取单元210执行步骤S110之前,创建单元220还可以用于基于用例管理数据库中的用例,创建至少一个业务域,并将所述至少一个业务域存储于所述业务域管理数据库,所述至少一个业务域包括所述目标业务域。

可选地,在获取单元210执行步骤S110之前,创建单元220还可以用于基于用例创建策略,创建至少一个用例,并将所述至少一个用例存储于所述用例管理数据库,所述至少一个用例包括所述目标用例。

可选地,用例测试处理装置200还可以包括请求响应单元,用于基于用户终端20发送的操作请求,对与所述操作请求对应的目标用例或目标业务域或链路计划进行处理操作,得到响应结果,所述目标用例包括手动用例、接口用例、数据源用例中的任一种,所述处理操作包括对所述目标用例或所述目标业务域或所述链路计划进行增加、删除、修改、查询操作中的任一种。

可选地,当所述至少一个目标业务域的数量为多个目标业务域时,创建单元220还可以用于将所述多个目标业务域按照所述预设执行顺序进行串联,得到所述链路计划。

可选地,请求响应单元还可以用于根据用户终端20发送的获取请求,向所述用户终端20输出工具平台中与所述获取请求对应的目标用例。

可选地,用例测试处理装置200还可以包括关联单元。请求响应单元还可以用于基于标记请求,对所述链路计划中的至少部分所述目标用例设置表征自动化工具的标志;关联单元可以用于将具有所述标志的目标用例与工具平台关联,用于供用户终端20从所述工具平台获取具有所述标志的目标用例。

在本实施例中,处理模块可以是一种集成电路芯片,具有信号的处理能力。上述处理模块可以是通用处理器。例如,该处理器可以是中央处理器(Central Processing Unit,CPU)、数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。

存储模块可以是,但不限于,随机存取存储器,只读存储器,可编程只读存储器,可擦除可编程只读存储器,电可擦除可编程只读存储器等。在本实施例中,存储模块可以用于存储用例、业务域、链路计划等。当然,存储模块还可以用于存储程序,处理模块在接收到执行指令后,执行该程序。

通信模块用于通过网络建立服务器10与用户终端20的通信连接,并通过网络收发数据。

需要说明的是,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的服务器10的具体工作过程,可以参考前述方法中的各步骤对应过程,在此不再过多赘述。

本申请实施例还提供一种计算机可读存储介质。计算机可读存储介质中存储有计算机程序,当计算机程序在计算机上运行时,使得计算机执行如上述实施例中所述的用例测试处理方法。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。

综上所述,本申请提供一种用例测试处理方法、装置、服务器及可读存储介质。方法包括:基于测试请求,从业务域管理数据库获取与测试请求对应的至少一个目标业务域,目标业务域包括至少一个目标用例;根据至少一个目标业务域及预设执行顺序创建链路计划,链路计划包括与预设执行顺序对应的至少一组目标用例;执行链路计划,得到测试结果,测试结果包括链路计划所包括的目标用例的数量及目标用例的执行结果。在本方案中,基于业务域管理数据库,可以共享业务域,方便用户根据需求从业务域管理数据库中灵活选取相应的业务域以形成链路计划,方便链路计划的测试,进而有利于提高测试与维护链路计划的效率。

在本申请所提供的实施例中,应该理解到,所揭露的装置、系统和方法,也可以通过其它的方式实现。以上所描述的装置、系统和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 用例测试处理方法、装置、服务器及可读存储介质
  • 测试用例的处理方法、装置及计算机可读存储介质
技术分类

06120112986466