一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种接口测试用例生成方法、装置及电子设备与流程

2023-01-15 09:08:25 来源:中国专利 TAG:


1.本发明涉及接口自动化测试技术领域,具体涉及一种接口测试用例生成方法、装置及电子设备。


背景技术:

2.现有项目中有大量请求类型为post的接口测试任务,很多接口测试任务的接口验证方式类似,并且接口测试均要做字段的校验,需要根据不同的字段类型编写对应类型字段的测试用例。因为此项工作重复性比较大,接口过多并且每个接口中还有很多需要验证的字段,手动编写耗时长,而且容易出现遗漏和错误。


技术实现要素:

3.因此,本发明要解决的技术问题在于克服现有手动编写杰克偶测试用例岑在耗时长,容易出现遗漏和错误的缺陷,从而提供一种接口测试用例生成方法、装置及电子设备。
4.根据第一方面,本发明实施例公开了一种接口测试用例生成方法,包括:读取待测试接口的目标配置文件,得到待测试接口的请求地址以及对应的请求体,所述请求体包括所述待测试接口的每一个待测参数;获取所述请求体对应的正常场景用例;遍历所述待测试接口的每一个待测参数,确定每一个待测参数的字段类型;根据所述每一个待测参数的字段类型和所述正常场景用例确定所述每一个待测参数的测试用例;根据所述每一个待测参数的测试用例生成所述待测试接口的测试用例文件。
5.可选地,所述待测参数的字段类型包括数字、字符串以及数组中的至少一种。
6.可选地,所述根据所述每一个待测参数的字段类型和所述正常场景用例确定所述每一个待测参数的测试用例,包括:根据所述字段类型为数字的测试参数生成对应第一目标数量的数字类型字段的测试用例;根据所述字段类型为字符串的测试参数生成对应第二目标数量的字符串类型字段的测试用例;根据所述数组类型为字符串的测试参数生成对应第三目标数量的数组类型字段的测试用例。
7.可选地,所述根据所述每一个待测参数的测试用例生成所述待测试接口的测试用例文件之后,所述方法还包括:将所述测试用例文件存储到预设待测试接口对应的测试用例文件夹中。
8.可选地,所述获取所述请求体对应的正常场景用例,包括:获取测试平台可导入的所述请求体对应的正常场景用例。
9.可选地,根据所述每一个待测参数的字段类型和所述正常场景用例确定所述每一个待测参数的测试用例,包括:获取测试平台的平台属性数据;根据所述平台属性数据生成所述可被测试平台导入的测试用例。
10.根据第二方面,本发明实施例还公开了一种接口测试用例生成装置,包括:读取模块,用于读取待测试接口的目标配置文件,得到待测试接口的请求地址以及对应的请求体,所述请求体包括所述待测试接口的每一个待测参数;获取模块,用于获取所述请求体对应
的正常场景用例;第一确定模块,用于遍历所述待测试接口的每一个待测参数,确定每一个待测参数的字段类型;第二确定模块,用于根据所述每一个待测参数的字段类型和所述正常场景用例确定所述每一个待测参数的测试用例;生成模块,用于根据所述每一个待测参数的测试用例生成所述待测试接口的测试用例文件。
11.可选地,所述待测参数的字段类型包括数字、字符串以及数组中的至少一种。
12.根据第三方面,本发明实施例还公开了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如第一方面或第一方面任一可选实施方式所述的接口测试用例生成方法的步骤。
13.根据第四方面,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一可选实施方式所述的接口测试用例生成方法的步骤。
14.本发明技术方案,具有如下优点:
15.本发明提供的接口测试用例生成方法/装置,包括:读取待测试接口的目标配置文件,得到待测试接口的请求地址以及对应的请求体,请求体包括所述待测试接口的每一个待测参数;获取请求体对应的正常场景用例;遍历待测试接口的每一个待测参数,确定每一个待测参数的字段类型;根据每一个待测参数的字段类型和正常场景用例确定每一个待测参数的测试用例;根据所述每一个待测参数的测试用例生成所述待测试接口的测试用例文件。本发明的方法,通过确定待测试接口对应的每一个待测参数的字段类型,每一个待测参数的字段类型和正常场景用例确定所述每一个待测参数的测试用例,达到了自动编写测试用例的目的,在提升工作效率的同时,保证了测试用例编写的正确性。
附图说明
16.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明实施例中接口测试用例生成方法的一个具体示例的流程图;
18.图2为本发明实施例中接口测试用例生成装置的一个具体示例的原理框图;
19.图3为本发明实施例中电子设备的一个具体示例图。
具体实施方式
20.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
22.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,还可以是两个元件内部的连通,可以是无线连接,也可以是有线连接。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
23.此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
24.本发明实施例公开了一种接口测试用例生成方法,本技术实施例中,接口测试用例生成方法应用于可进行接口测试的任一自动化测试平台,如图1所示,该方法包括如下步骤:
25.步骤101,读取待测试接口的目标配置文件,得到待测试接口的请求地址以及对应的请求体,所述请求体包括所述待测试接口的每一个待测参数。
26.示例性地,接口主要是子模块或者子系统间交互并相互作用的部分。这里的接口指的是广义的接口、客户端与后台服务间的协议、插件间通信的接口、模块间的接口等都可以理解为接口。接口测试可以是针对模块或系统间接口进行的测试。待测试接口可以是任一需要进行测试的接口;目标配置文件可以是预先存储的文件,目标配置文件用于存储到待测试接口的请求地址和对应的请求体;待测参数可以是待测试接口需要校验的字段,待测试接口的请求地址可以用于表征待测试接口,读取待测试接口的请求地址便于后续生成待测参数对应的测试用例。
27.步骤102,获取所述请求体对应的正常场景用例。
28.示例性地,用例是在不展现一个系统或子系统内部结构的情况下,对系统或子系统的某个连贯的功能单元的定义和描述;场景是从用例中实例化出来的一些活动,场景也被称作是用例的实例;在软件工程中,用例是一种在开发新系统或者软件改造时捕获潜在需求的技术,每个用例提供一个或多个场景,该场景揭示系统是如何同最终用户或其它系统交互的,从而获得一个明确的业务目标;场景主要包括4种主要的类型:正常的用例场景、备选的用例场景、异常的用例场景以及假定推测的场景。正常场景用例可以是正常的用例场景对应的测试用例。本技术实施例中,正常场景用例的获取过程可以由程序员手动编写,上传到自动化测试平台上。
29.步骤103,遍历所述待测试接口的每一个待测参数,确定每一个待测参数的字段类型。示例性地,对于接口来说,待测参数可以是输入参数,常见输入参数类型有:(1)数值型(int、long、float、double等)、(2)字符串类型、(3)数组或链表。
30.步骤104,根据所述每一个待测参数的字段类型和所述正常场景用例确定所述每一个待测参数的测试用例。示例性地,本技术实施例中,当待测试接口的待测参数的字段类型和正常场景用例,生成不同字段类型的待测参数对应的一个或多个测试用例。传统的方法是通过手动在正常场景用例的基础上编写待测参数对应的测试用例,这样的方法存在工作效率低且容易出错的问题,通过确认待测参数的字段类型,并根据对应的字段类型生成对应的测试用例,提高了测试用例编写的效率和正确率。
31.步骤105,根据所述每一个待测参数的测试用例生成所述待测试接口的测试用例
文件。示例性地,测试用例文件可用于后续对待测试接口的自动化测试。
32.本发明提供的接口测试用例生成方法,通过确定待测试接口对应的每一个待测参数的字段类型,每一个待测参数的字段类型和正常场景用例确定所述每一个待测参数的测试用例,达到了自动编写测试用例的目的,提升了工作效率,根据待测参数的类型,自动根据正常场景用例生成待测参数对应的测试用例,保证了测试用例编写的正确性。
33.作为本发明一个可选实施方式,所述待测参数的字段类型包括数字、字符串以及数组中的至少一种。示例性地,待测参数的字段类型可以包括(1)数值型(int、long、float、double等)、(2)字符串类型、(3)数组或链表中的任一中或多种。
34.作为本发明一个可选实施方式,上述步骤104,包括:根据所述字段类型为数字的测试参数生成对应第一目标数量的数字类型字段的测试用例。示例性地,目标数量可以是任一数量。本技术实施例中,第一目标数量可以是3,当待测参数的字段为数字类型,则生成3种针对数字类型字段的测试用例。
35.根据所述字段类型为字符串的测试参数生成对应第二目标数量的字符串类型字段的测试用例。示例性地,本技术实施例中,第二目标数量可以是3,当待测参数的字段为字符串类型,则生成3种针对字符串类型字段的测试用例。
36.根据所述数组类型为字符串的测试参数生成对应第三目标数量的数组类型字段的测试用例。示例性地,本技术实施例中,第三目标数量可以是3,当待测参数的字段为数组类型,则生成3种针对数组类型字段的测试用例。
37.在本技术实施例中,当待测接口的测试参数包括n个字段(n为任意数字),根据字段类型编写对应的用例,最终用例总数为1 n*3个。
38.作为本发明一个可选实施方式,上述步骤105之后,所述方法还包括:将所述测试用例文件存储到预设待测试接口对应的测试用例文件夹中。
39.示例性地,本技术实施例中,目标配置文件还可以包含待测试接口自定义的文件夹名称,自定义的文件夹名称可以包括但不限于待测试接口的名称,预设待测试接口对应的测试用例文件夹可以是根据待测试接口自定义的文件夹名称生成的文件夹,将测试用例文件存储到预设待测试接口对应的测试用例文件夹中,便于后续通过文件夹名称查询待测试端口的测试用例。同时,还可以根据每一个待测参数的测试用例生成对应的用例目录,便于后续对待测参数的测试用例进行查询。
40.作为本发明一个可选实施方式,所述获取所述请求体对应的正常场景用例,包括:获取测试平台可导入的所述请求体对应的正常场景用例。
41.示例性地,本技术实施例中,测试平台可以包括但不限于postman测试平台,根据postman测试平台特性,生成postman测试平台可导入的正常场景用例。
42.作为本发明一个可选实施方式,上述步骤104,包括:获取测试平台的平台属性数据;根据所述平台属性数据生成所述可被测试平台导入的测试用例。
43.示例性地,本技术实施例中,测试平台的平台属性数据可以包括测试平台的类型信息以及可运行的测试用例的类型信息,根据相应的测试平台的属性数据来生成对应的测试用例。以测试平台为postman测试平台为例,根据postman测试平台特性,生成postman测试平台可导入的每一个待测参数的测试用例。
44.本发明实施例提供的接口测试用例生成方法,改变了行业中postman用例只能手
动编写的公认常识,实现测试用例的自动生成,有效缩短测试用例编写时间并可以达到100%的正确性;经统计,以前编写一个包含20个参数的接口需要完成1个基本用例和60个异常用例,大致需要半小时。如果换算成1000个接口,节省下来的时间是相当可观的,可以大幅度提升了工作效率。
45.本发明实施例还公开了一种接口测试用例生成装置,如图2所示,该装置包括:包括:读取模块201,用于读取待测试接口的目标配置文件,得到待测试接口的请求地址以及对应的请求体,所述请求体包括所述待测试接口的每一个待测参数;获取模块202,用于获取所述请求体对应的正常场景用例;第一确定模块203,用于遍历所述待测试接口的每一个待测参数,确定每一个待测参数的字段类型;第二确定模块204,用于根据所述每一个待测参数的字段类型和所述正常场景用例确定所述每一个待测参数的测试用例;生成模块205,用于根据所述每一个待测参数的测试用例生成所述待测试接口的测试用例文件。
46.本发明提供的接口测试用例生成装置,通过确定待测试接口对应的每一个待测参数的字段类型,每一个待测参数的字段类型和正常场景用例确定所述每一个待测参数的测试用例,达到了自动编写测试用例的目的,在提升工作效率的同时,保证了测试用例编写的正确性。
47.作为本发明一个可选实施方式,所述待测参数的字段类型包括数字、字符串以及数组中的至少一种。
48.作为本发明一个可选实施方式,所述第二确定模块,包括:第一生成子模块,用于根据所述字段类型为数字的测试参数生成对应目标数量的数字类型字段的测试用例;第二生成子模块,用于根据所述字段类型为字符串的测试参数生成对应目标数量的字符串类型字段的测试用例;第三生成子模块,用于根据所述数组类型为字符串的测试参数生成对应目标数量的数组类型字段的测试用例。
49.作为本发明一个可选实施方式,所述装置还包括:将所述测试用例文件存储到预设待测试接口对应的测试用例文件夹中。
50.作为本发明一个可选实施方式,所述获取模块,包括:第一获取子模块,用于获取测试平台可导入的所述请求体对应的正常场景用例。
51.作为本发明一个可选实施方式,所述第二确定模块,包括:第二获取子模块,用于获取测试平台的平台属性数据;确定子模块,用于根据所述平台属性数据生成所述可被测试平台导入的测试用例。
52.本发明实施例还提供了一种电子设备,如图3所示,该电子设备可以包括处理器401和存储器402,其中处理器401和存储器402可以通过总线或者其他方式连接,图3中以通过总线连接为例。
53.处理器401可以为中央处理器(central processing unit,cpu)。处理器401还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
54.存储器402作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的接口测试用例生成方法对应的程序
指令/模块。处理器401通过运行存储在存储器402中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的接口测试用例生成方法。
55.存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器401所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至处理器401。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
56.所述一个或者多个模块存储在所述存储器402中,当被所述处理器401执行时,执行如图1所示实施例中的接口测试用例生成方法。
57.上述电子设备具体细节可以对应参阅图1所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
58.本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
59.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献