一种低代码对象存储网关自动化测试方法及系统与流程
未命名
07-19
阅读:121
评论:0
1.本发明涉及软件测试技术领域,尤其涉及一种低代码对象存储网关自动化测试方法及系统。
背景技术:
2.随着互联网网络存储架构的发展,根据客户要求进行对象存储为客户提供了安全可靠的数据存储服务,在对象存储时,对象网关支持api和sdk两种客户访问方式,存储的资源池也分布在全国多个省市和地区。各资源池定制化的功能需求对自动化测试系统的灵活性具有较高的要求。
3.但是,目前在对象存储时,因为资源池分布的问题,有些地区在对象存储时可以存在存储网关测试团队使用的自动化测试系统仅支持api接口测试,不兼容sdk的情况;同时各资源池线上支持的功能特性存在差异,每个资源池的测试都需要维护单独的测试用例和代码,自动化工作量大且代码重复性高,从而使得现有的自动化测试系统代码开发难度较大,对测试人员的代码能力要求较高。
技术实现要素:
4.针对现有技术中存在的问题,本发明实施例提供一种低代码对象存储网关自动化测试方法及系统。
5.本发明实施例提供一种低代码对象存储网关自动化测试方法,包括:接收到新增测试用例后,确定所述新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将所述测试参数输入所述测试用例模板,得到对应的测试用例,所述测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;获取所述测试场景对应的场景类型,并基于所述场景类型的区别,将所述测试用例分为不同的测试集;接收到测试人员的测试请求后,确定所述测试请求对应的场景类型,并基于所述测试请求的场景类型确定对应的目标测试集,通过所述测试用例中的全局变量对所述目标测试集中的全局模板参数进行替换,所述替换的顺序依据为所述目标测试集中测试用例代码的优先级;基于所述测试用例的前置操作对所述请求参数进行前置处理,得到处理后的测试请求参数,并根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果;基于所述测试用例的后置操作获取所述新增测试用例中定义的断言方式、断言路径以及期望值,基于所述断言方式、断言路径以及期望值对所述测试结果进行校验,通过校验结果判断所述测试人员的测试请求是否通过。
6.在其中一个实施例中,所述方法还包括:
基于所述优先级依次执行所述测试用例中的测试步骤,当测试用例中的测试步骤执行完毕后,检测当前测试用例是否执行成功;当当前测试用例执行成功时,基于所述优先级执行下一测试用例;当当前测试用例执行失败时,检测所述测试用例是否包含重试标识,当所述测试用例中包含重试标识时,对当前测试用例执行失败的失败请求重复执行;检测到所述测试集中的所有测试用例的测试步骤执行完毕后,获取所述测试集对应的测试结果。
7.在其中一个实施例中,所述方法还包括:基于所述测试请求参数判断所述前置处理步骤中是否存在处理步骤执行失败,并当所述前置处理步骤中存在处理步骤执行失败时,跳过当前测试用例,基于所述测试集中测试用例的优先级执行下一测试用例。
8.在其中一个实施例中,所述方法还包括:获取代码数据库中预存的与所述测试用例中的测试步骤存在映射关系的执行代码,并通过所述执行代码及映射关系对所述测试用例中的测试步骤进行执行。
9.在其中一个实施例中,所述前置处理,包括:数据预处理、局部参数替换、上下文用例参数替换;所述局部参数替换、上下文用例参数替换,包括:获取所述请求参数对应的靶向参数,基于所述请求参数对所述靶向参数进行参数替换。
10.在其中一个实施例中,所述方法还包括:基于所述检测结果中测试用例的执行结果生成测试报告,并将所述测试报告发送至所述测试人员的绑定地址。
11.本发明实施例提供一种低代码对象存储网关自动化测试系统,包括:接收模块,用于接收到新增测试用例后,确定所述新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将所述测试参数输入所述测试用例模板,得到对应的测试用例,所述测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;分类模块,用于获取所述测试场景对应的场景类型,并基于所述场景类型的区别,将所述测试用例分为不同的测试集;替换模块,用于接收到测试人员的测试请求后,确定所述测试请求对应的场景类型,并基于所述测试请求的场景类型确定对应的目标测试集,通过所述测试用例中的全局变量对所述目标测试集中的全局模板参数进行替换,所述替换的顺序依据为所述目标测试集中测试用例代码的优先级;第一执行模块,用于基于所述测试用例的前置操作对所述请求参数进行前置处理,得到处理后的测试请求参数,并根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果;校验模块,用于基于所述测试用例的后置操作获取所述新增测试用例中定义的断言方式、断言路径以及期望值,基于所述断言方式、断言路径以及期望值对所述测试结果进行校验,通过校验结果判断所述测试人员的测试请求是否通过。
12.在其中一个实施例中,所述系统还包括:检测模块,用于基于所述优先级依次执行所述测试用例中的测试步骤,当测试用例中的测试步骤执行完毕后,检测当前测试用例是否执行成功;第二执行模块,用于当当前测试用例执行成功时,基于所述优先级执行下一测试用例;第三执行模块,用于当当前测试用例执行失败时,检测所述测试用例是否包含重试标识,当所述测试用例中包含重试标识时,对当前测试用例执行失败的失败请求重复执行;获取模块,用于检测到所述测试集中的所有测试用例的测试步骤执行完毕后,获取所述测试集对应的测试结果。
13.本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述低代码对象存储网关自动化测试方法的步骤。
14.本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述低代码对象存储网关自动化测试方法的步骤。
15.本发明实施例提供的一种低代码对象存储网关自动化测试方法及系统,接收到新增测试用例后,确定新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将测试参数输入测试用例模板,得到对应的测试用例,测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;获取测试场景对应的场景类型,并基于场景类型的区别,将测试用例分为不同的测试集;接收到测试人员的测试请求后,确定测试请求对应的场景类型,并基于测试请求的场景类型确定对应的目标测试集,通过测试用例中的全局变量对目标测试集中的全局模板参数进行替换,替换的顺序依据为目标测试集中测试用例代码的优先级;基于测试用例的前置操作对请求参数进行前置处理,得到处理后的测试请求参数,并根据测试请求参数执行测试用例中的测试步骤,获取测试步骤对应的测试结果;基于测试用例的后置操作获取新增测试用例中定义的断言方式、断言路径以及期望值,基于断言方式、断言路径以及期望值对测试结果进行校验,通过校验结果判断测试人员的测试请求是否通过。这样能够以测试用例为数据驱动,以注解方式定义的工作流作为用例执行引擎,通过解析测试用例并执行用例中定义的:前置操作、测试步骤、结果断言以及后置处理等操作完成自动化测试,并生成测试报告。从而在测试时只需一组测试用例集,结合一套通用执行代码完成自动化测试,降低了自动化的工作量和重复性;解决了其他测试系统代码不够简洁、维护困难等常见问题,并且在测试时无脚本或代码编写投入,便于不懂开发的测试人员快速投入自动化测试,同时也支持对象存储网关的api接口和sdk两种方式的自动化测试,具有较强的扩展性,可轻松扩展其他测试方式。
附图说明
16.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明实施例中一种低代码对象存储网关自动化测试方法的流程图;图2为本发明实施例中一种测试用例模板的模板结构图;图3为本发明另一实施例中一种低代码对象存储网关自动化测试方法的流程图;图4为本发明实施例中一种低代码对象存储网关自动化测试系统的结构图;图5为本发明实施例中电子设备结构示意图。
具体实施方式
18.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.图1为本发明实施例提供的一种低代码对象存储网关自动化测试方法的流程示意图,如图1所示,本发明实施例提供了一种低代码对象存储网关自动化测试方法:步骤s101,接收到新增测试用例后,确定所述新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将所述测试参数输入所述测试用例模板,得到对应的测试用例,所述测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作。
20.具体地,工作人员通过交互界面导入多个或输入单个新增测试用例,其中新增测试用例支持har格式和jsonarray格式,测试参数,即测试用例的内容包括:用例名称、用例优先级、请求参数、前置操作、测试步骤、后置操作等参数,也包括断言方式、断言路径以及期望值,还包括新增测试用例所适用的场景,即测试场景,获取预设的测试用例模板,其中,测试用例模板可以如图2所示,将测试参数输入至测试用例模板,得到与新增测试用例的测试内容对应的测试用例。
21.步骤s102,获取所述测试场景对应的场景类型,并基于所述场景类型的区别,将所述测试用例分为不同的测试集。
22.具体地,获取测试场景对应的不同的场景类型,并基于不同的场景类型之间的区别,将测试用例分为不同的测试集,另外,在接收到新增测试用例时,可能新增测试用例已经选择了已有的测试场景,则直接根据选择的测试场景对应的场景类型,将新增的测试用例分配至对应的测试集。
23.步骤s103,接收到测试人员的测试请求后,确定所述测试请求对应的场景类型,并基于所述测试请求的场景类型确定对应的目标测试集,通过所述测试用例中的全局变量对所述目标测试集中的全局模板参数进行替换,所述替换的顺序依据为所述目标测试集中测试用例代码的优先级。
24.具体地,在测试人员确定执行测试,接收到测试请求后,根据测试人员本人对应的测试类型,或是测试请求中对应的请求类型确定对应的场景类型,并基于测试请求的场景类型确定对应的目标测试集,然后根据测试环境中测试用例定义的全局变量替换测试用例集中每个测试用例定义的全局模板参数,替换的顺序依据为目标测试集中测试用例代码的优先级,另外,也可以根据测试用例代码的优先级对目标测试集中的测试用例进行排序。
25.步骤s104,基于所述测试用例的前置操作对所述请求参数进行前置处理,得到处
理后的测试请求参数,并根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果。
26.具体地,基于测试用例的前置操作对请求参数进行前置处理,其中,前置处理可以包括:数据预处理、局部参数替换、上下文用例参数替换、前置请求方法调用等步骤,其中,局部参数替换可以为对当前测试用例的靶向参数进行参数替换,而上下文用例参数替换则是对目标测试集中的前后测试用例中的靶向参数进行参数替换,而得到请求参数在前置处理后的测试请求参数,然后根据测试请求参数执行测试用例中的测试步骤,测试步骤可以包括:根据测试用例中的前置处理后的请求参数执行http请求、rgw请求、sdk请求或其他扩展的请求方法,并把响应结果转存到测试用例对象中,然后获取测试步骤对应的测试结果,另外,在基于请求参数执行各项请求,比如http请求、rgw请求、sdk请求等请求时,可以直接获取代码数据库中预存的与测试用例中具体的请求存在映射关系的执行代码,比如http请求对应的执行代码、rgw请求对应的执行代码等,然后直接通过执行代码及映射关系对测试用例中的测试步骤进行执行,这样通过映射机制定义工作流中的测试用例,避免了重复输入代码,实现了测试用例和执行代码的隔离,降低了自动化的工作量和重复性。
27.另外,在测试人员进行测试时,可以对目标测试集中的所有测试用例根据优先级依次执行测试步骤,并且,在每个测试用例中的测试步骤执行完毕后,根据每个测试用例的执行结果检测当前测试用例是否执行成功,当当前测试用例执行成功时,基于优先级执行下一测试用例,当当前测试用例执行失败时,检测测试用例是否包含重试标识,其中,重试标识用于指示在测试用例的测试请求失败时,对测试请求重复执行,重试标识中也可以包括含重复执行的上限次数,当测试用例中包含重试标识时,对当前测试用例执行失败的失败请求重复执行,并在检测到测试集中的所有测试用例的测试步骤执行完毕后,获取测试集对应的测试结果。
28.另外,在基于测试用例的前置操作对请求参数进行前置处理的过程中,在前置处理完成后,基于测试请求判断前置处理是否执行失败,并当前置处理步骤中存在处理步骤执行失败时,不用进行后续的测试步骤,跳过当前测试用例,基于测试集中测试用例的优先级执行下一测试用例。
29.步骤s105,基于所述测试用例的后置操作获取所述新增测试用例中定义的断言方式、断言路径以及期望值,基于所述断言方式、断言路径以及期望值对所述测试结果进行校验,通过校验结果判断所述测试人员的测试请求是否通过。
30.具体地,基于测试用例的后置操作,即获取新增测试用例中定义的断言方式、断言路径和预期结果,对比测试用例在测试步骤中的请求响应结果,使用assert方法进行断言,通过断言结果判断用例执行失败与否,根据失败与否的结果确定所述测试人员的测试请求是否通过。
31.另外,可以通过获取db(存储地址)中的测试用例和用例执行结果生成测试报告,并将测试报告发送至所述测试人员的绑定地址。
32.本发明实施例提供的一种低代码对象存储网关自动化测试方法,接收到新增测试用例后,确定新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将测试参数输入测试用例模板,得到对应的测试用例,测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;获取测试场景对应的场景类型,并基
于场景类型的区别,将测试用例分为不同的测试集;接收到测试人员的测试请求后,确定测试请求对应的场景类型,并基于测试请求的场景类型确定对应的目标测试集,通过测试用例中的全局变量对目标测试集中的全局模板参数进行替换,替换的顺序依据为目标测试集中测试用例代码的优先级;基于测试用例的前置操作对请求参数进行前置处理,得到处理后的测试请求参数,并根据测试请求参数执行测试用例中的测试步骤,获取测试步骤对应的测试结果;基于测试用例的后置操作获取新增测试用例中定义的断言方式、断言路径以及期望值,基于断言方式、断言路径以及期望值对测试结果进行校验,通过校验结果判断测试人员的测试请求是否通过。这样能够以测试用例为数据驱动,以注解方式定义的工作流作为用例执行引擎,通过解析测试用例并执行用例中定义的:前置操作、测试步骤、结果断言以及后置处理等操作完成自动化测试,并生成测试报告。从而在测试时只需一组测试用例集,结合一套通用执行代码完成自动化测试,降低了自动化的工作量和重复性;解决了其他测试系统代码不够简洁、维护困难等常见问题,并且在测试时无脚本或代码编写投入,便于不懂开发的测试人员快速投入自动化测试,同时也支持对象存储网关的api接口和sdk两种方式的自动化测试,具有较强的扩展性,可轻松扩展其他测试方式。
33.在另一实施例中,本发明实施例提供的一种低代码对象存储网关自动化测试方法可以如图3所示,通过定义的通用工作流机制能够更好的统一处理各模块的超时、异常、失败重试等场景,本实施例中的方法能够保证自动化代码的可重用性和可读性。工作流的处理流程为:使用数据驱动的参数化测试方法作为用例执行方法,并根据定义的数据源解析方法从测试用例json文件中解析出测试用例,对测试用例进行全局参数替换;解析每个测试用例中定义的测试类和测试方法,执行前置操作:包括数据预处理、局部参数替换、上下文用例参数替换、前置请求方法调用等;执行测试步骤:包括根据用例中的请求参数执行http请求、rgw sdk请求或其他扩展的请求方法,并把响应结果转存到测试用例对象中;后置操作:根据测试用例中定义的断言方式和预期结果,对比请求响应结果,使用assert方法进行断言,通过断言结果判断用例执行失败与否,对于失败的用例根据全局配置参数或用例局部参数可决定是进行失败重试;工作流执行过程中的每一个关键步骤的执行日志都会存储入db,用于所有用例执行完成后生成测试报告。
34.图4为本发明实施例提供的一种低代码对象存储网关自动化测试系统,包括:接收模块s201、分类模块s202、替换模块s203、第一执行模块s204、校验模块s205,其中:接收模块s201,用于接收到新增测试用例后,确定所述新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将所述测试参数输入所述测试用例模板,得到对应的测试用例,所述测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作。
35.分类模块s202,用于获取所述测试场景对应的场景类型,并基于所述场景类型的区别,将所述测试用例分为不同的测试集。
36.替换模块s203,用于接收到测试人员的测试请求后,确定所述测试请求对应的场景类型,并基于所述测试请求的场景类型确定对应的目标测试集,通过所述测试用例中的全局变量对所述目标测试集中的全局模板参数进行替换,所述替换的顺序依据为所述目标测试集中测试用例代码的优先级。
37.第一执行模块s204,用于基于所述测试用例的前置操作对所述请求参数进行前置
处理,得到处理后的测试请求参数,并根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果。
38.校验模块s205,用于基于所述测试用例的后置操作获取所述新增测试用例中定义的断言方式、断言路径以及期望值,基于所述断言方式、断言路径以及期望值对所述测试结果进行校验,通过校验结果判断所述测试人员的测试请求是否通过。
39.在其中一个实施例中,所述系统还包括:检测模块,用于基于所述优先级依次执行所述测试用例中的测试步骤,当测试用例中的测试步骤执行完毕后,检测当前测试用例是否执行成功。
40.第二执行模块,用于当当前测试用例执行成功时,基于所述优先级执行下一测试用例。
41.第三执行模块,用于当当前测试用例执行失败时,检测所述测试用例是否包含重试标识,当所述测试用例中包含重试标识时,对当前测试用例执行失败的失败请求重复执行。
42.获取模块,用于检测到所述测试集中的所有测试用例的测试步骤执行完毕后,获取所述测试集对应的测试结果。
43.关于低代码对象存储网关自动化测试系统的具体限定可以参见上文中对于低代码对象存储网关自动化测试方法的限定,在此不再赘述。上述低代码对象存储网关自动化测试系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
44.图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)301、存储器(memory)302、通信接口(communications interface)303和通信总线304,其中,处理器301,存储器302,通信接口303通过通信总线304完成相互间的通信。处理器301可以调用存储器302中的逻辑指令,以执行如下方法:接收到新增测试用例后,确定新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将测试参数输入测试用例模板,得到对应的测试用例,测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;获取测试场景对应的场景类型,并基于场景类型的区别,将测试用例分为不同的测试集;接收到测试人员的测试请求后,确定测试请求对应的场景类型,并基于测试请求的场景类型确定对应的目标测试集,通过测试用例中的全局变量对目标测试集中的全局模板参数进行替换,替换的顺序依据为目标测试集中测试用例代码的优先级;基于测试用例的前置操作对请求参数进行前置处理,得到处理后的测试请求参数,并根据测试请求参数执行测试用例中的测试步骤,获取测试步骤对应的测试结果;基于测试用例的后置操作获取新增测试用例中定义的断言方式、断言路径以及期望值,基于断言方式、断言路径以及期望值对测试结果进行校验,通过校验结果判断测试人员的测试请求是否通过。
45.此外,上述的存储器302中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以
使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
46.另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的传输方法,例如包括:接收到新增测试用例后,确定新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将测试参数输入测试用例模板,得到对应的测试用例,测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;获取测试场景对应的场景类型,并基于场景类型的区别,将测试用例分为不同的测试集;接收到测试人员的测试请求后,确定测试请求对应的场景类型,并基于测试请求的场景类型确定对应的目标测试集,通过测试用例中的全局变量对目标测试集中的全局模板参数进行替换,替换的顺序依据为目标测试集中测试用例代码的优先级;基于测试用例的前置操作对请求参数进行前置处理,得到处理后的测试请求参数,并根据测试请求参数执行测试用例中的测试步骤,获取测试步骤对应的测试结果;基于测试用例的后置操作获取新增测试用例中定义的断言方式、断言路径以及期望值,基于断言方式、断言路径以及期望值对测试结果进行校验,通过校验结果判断测试人员的测试请求是否通过。
47.以上所描述的系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
48.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
49.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
技术特征:
1.一种低代码对象存储网关自动化测试方法,其特征在于,包括:接收到新增测试用例后,确定所述新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将所述测试参数输入所述测试用例模板,得到对应的测试用例,所述测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;获取所述测试场景对应的场景类型,并基于所述场景类型的区别,将所述测试用例分为不同的测试集;接收到测试人员的测试请求后,确定所述测试请求对应的场景类型,并基于所述测试请求的场景类型确定对应的目标测试集,通过所述测试用例中的全局变量对所述目标测试集中的全局模板参数进行替换,所述替换的顺序依据为所述目标测试集中测试用例代码的优先级;基于所述测试用例的前置操作对所述请求参数进行前置处理,得到处理后的测试请求参数,并根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果;基于所述测试用例的后置操作获取所述新增测试用例中定义的断言方式、断言路径以及期望值,基于所述断言方式、断言路径以及期望值对所述测试结果进行校验,通过校验结果判断所述测试人员的测试请求是否通过。2.根据权利要求1所述的低代码对象存储网关自动化测试方法,其特征在于,所述根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果,包括:基于所述优先级依次执行所述测试用例中的测试步骤,当测试用例中的测试步骤执行完毕后,检测当前测试用例是否执行成功;当当前测试用例执行成功时,基于所述优先级执行下一测试用例;当当前测试用例执行失败时,检测所述测试用例是否包含重试标识,当所述测试用例中包含重试标识时,对当前测试用例执行失败的失败请求重复执行;检测到所述测试集中的所有测试用例的测试步骤执行完毕后,获取所述测试集对应的测试结果。3.根据权利要求2所述的低代码对象存储网关自动化测试方法,其特征在于,所述基于所述测试用例的前置操作对所述请求参数进行前置处理,得到处理后的测试请求参数之后,还包括:基于所述测试请求参数判断所述前置处理步骤中是否存在处理步骤执行失败,并当所述前置处理步骤中存在处理步骤执行失败时,跳过当前测试用例,基于所述测试集中测试用例的优先级执行下一测试用例。4.根据权利要求1所述的低代码对象存储网关自动化测试方法,其特征在于,所述根据所述测试请求参数执行所述测试用例中的测试步骤,包括:获取代码数据库中预存的与所述测试用例中的测试步骤存在映射关系的执行代码,并通过所述执行代码及映射关系对所述测试用例中的测试步骤进行执行。5.根据权利要求1所述的低代码对象存储网关自动化测试方法,其特征在于,所述前置处理,包括:
数据预处理、局部参数替换、上下文用例参数替换;所述局部参数替换、上下文用例参数替换,包括:获取所述请求参数对应的靶向参数,基于所述请求参数对所述靶向参数进行参数替换。6.根据权利要求1所述的低代码对象存储网关自动化测试方法,其特征在于,所述方法还包括:基于所述测试结果中测试用例的执行结果生成测试报告,并将所述测试报告发送至所述测试人员的绑定地址。7.一种低代码对象存储网关自动化测试系统,其特征在于,所述系统包括:接收模块,用于接收到新增测试用例后,确定所述新增测试用例对应的测试参数及测试场景,获取预设的测试用例模板,将所述测试参数输入所述测试用例模板,得到对应的测试用例,所述测试用例模板包括:测试用例名称、优先级、全局变量、请求参数、前置操作、测试步骤、后置操作;分类模块,用于获取所述测试场景对应的场景类型,并基于所述场景类型的区别,将所述测试用例分为不同的测试集;替换模块,用于接收到测试人员的测试请求后,确定所述测试请求对应的场景类型,并基于所述测试请求的场景类型确定对应的目标测试集,通过所述测试用例中的全局变量对所述目标测试集中的全局模板参数进行替换,所述替换的顺序依据为所述目标测试集中测试用例代码的优先级;第一执行模块,用于基于所述测试用例的前置操作对所述请求参数进行前置处理,得到处理后的测试请求参数,并根据所述测试请求参数执行所述测试用例中的测试步骤,获取所述测试步骤对应的测试结果;校验模块,用于基于所述测试用例的后置操作获取所述新增测试用例中定义的断言方式、断言路径以及期望值,基于所述断言方式、断言路径以及期望值对所述测试结果进行校验,通过校验结果判断所述测试人员的测试请求是否通过。8.根据权利要求7所述的低代码对象存储网关自动化测试系统,其特征在于,所述系统还包括:检测模块,用于基于所述优先级依次执行所述测试用例中的测试步骤,当测试用例中的测试步骤执行完毕后,检测当前测试用例是否执行成功;第二执行模块,用于当当前测试用例执行成功时,基于所述优先级执行下一测试用例;第三执行模块,用于当当前测试用例执行失败时,检测所述测试用例是否包含重试标识,当所述测试用例中包含重试标识时,对当前测试用例执行失败的失败请求重复执行;获取模块,用于检测到所述测试集中的所有测试用例的测试步骤执行完毕后,获取所述测试集对应的测试结果。9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至6任一项所述低代码对象存储网关自动化测试方法的步骤。10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至6任一项所述低代码对象存储网关自动化测试方
法的步骤。
技术总结
本发明实施例提供一种低代码对象存储网关自动化测试方法及系统,所述方法包括:接收到新增测试用例后,将新增测试用例的测试参数输入测试用例模板,得到测试用例,并基于场景类型确定目标测试集;通过全局变量进行全局模板参数替换;基于测试用例的前置操作对请求参数进行前置处理,确定处理后的请求参数,并执行测试步骤,得到测试结果;并基于新增测试用例中定义的断言方式、断言路径以及期望值进行校验,从而判断是否通过测试。这样能够通用执行代码完成自动化测试,降低了自动化的工作量和重复性,降低测试难度的同时提高了系统扩展性。性。性。
技术研发人员:李姗姗
受保护的技术使用者:天翼云科技有限公司
技术研发日:2023.06.12
技术公布日:2023/7/17
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种大型转印墨水存储罐的制作方法 下一篇:一种小型超水深密封连接器的制作方法
