CN113138929A - 分布式接口测试方法、装置、电子设备及存储介质 - Google Patents

分布式接口测试方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN113138929A
CN113138929A CN202110518005.3A CN202110518005A CN113138929A CN 113138929 A CN113138929 A CN 113138929A CN 202110518005 A CN202110518005 A CN 202110518005A CN 113138929 A CN113138929 A CN 113138929A
Authority
CN
China
Prior art keywords
interface
tested
test
test case
mirror image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110518005.3A
Other languages
English (en)
Inventor
邓仁友
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Saiante Technology Service Co Ltd
Original Assignee
Ping An International Smart City Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An International Smart City Technology Co Ltd filed Critical Ping An International Smart City Technology Co Ltd
Priority to CN202110518005.3A priority Critical patent/CN113138929A/zh
Publication of CN113138929A publication Critical patent/CN113138929A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3696Methods or tools to render software testable

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及研发管理领域,揭露了一种分布式接口测试方法,包括:获取各个待测试接口的端口地址;对待接口测试的系统进行抓包,得到数据传输记录,并根据端口地址,查询数据传输记录,得到各个待测试接口的请求数据;利用用例构建服务,对各个请求数据进行测试用例自动编译,得到待执行测试用例集合;封装自动执行工具及自动执行工具的运行环境,得到测试执行容器,进行镜像复制,得到多个镜像执行容器;根据预设的测试工程要求,利用多个镜像执行容器执行测试用例集合,得到各个待测试接口对应的检测结果。另外,本发明还提供了一种接口测试装置、电子设备及存储介质。本发明可以解决接口测试过程的总体执行时间过长的问题。

Description

分布式接口测试方法、装置、电子设备及存储介质
技术领域
本发明涉及研发管理领域,尤其涉及一种分布式接口测试方法、装置、电子设备及计算机可读存储介质。
背景技术
接口测试主要用于检测外部系统与内部系统之间,或者内部系统的各个子系统之间的交互点,检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等,以检测接口功能是否完善的一种测试方法,主要实现方式为在一个客户端中根据制定好的测试规则,有顺序的执行预构建的测试用例,发现各个待测试接口的输入及输出数据有没有问题。
目前,接口测试过程主要通过抓包工具获取抓包文件,再将抓包文件转化为测试用例集合,由于所述抓包工具是在数据输入到最终系统操作完成的时间段内,根据数据走向,逐步获取各个测试接口中数据的输入与输出,导致获取的抓包文件具有连续性,进一步导致生成的测试用例也是连续的,只能利用一个自动化执行工具对测试用例进行自动化执行,导致总体执行时间较长。
发明内容
本发明提供一种分布式接口测试方法、装置、电子设备及计算机可读存储介质,其主要目的在于解决接口测试过程的总体执行时间过长的问题。
为实现上述目的,本发明提供的一种分布式接口测试方法,包括:
从待接口测试的系统中获取各个待测试接口的端口地址;
对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据;
利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合;
封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器;
根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
可选的,所述对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据,包括:
获取所述待接口测试的系统的网页,利用开发者工具,根据网页开发者协议,抓包所述网页的网络数据传输情况,得到所述网页的请求记录集合;
将所述请求记录集合从超文本标记语言形式输出为文本形式,得到请求记录表格;
利用所述端口地址,从所述请求记录表表格中筛选属性中包含所述端口地址的请求记录文本,得到所述请求数据。
可选的,所述利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果,包括:
利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,得到响应数据集合;
判断所述响应集合是否与预设的响应期望数据集合相同,根据所述判断得到的结果得到所述待测试接口对应的检测结果。
可选的,所述利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,包括:
步骤A、提取所述测试用例集合中一个未被提取过的测试用例,并对所述测试用例进行环境专属配置;
步骤B、利用所述镜像执行容器,在所述环境专属配置中执行所述测试用例,得到所述测试用例的响应数据;
步骤C、执行预设的容器环境清理操作,并返回上述步骤A的操作,直至所述测试用例集合中的测试用例全部遍历完成。
可选的,所述利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合,包括:
根据所述用例构建服务中的用例构建规则中的标注,对所述请求数据进行不同环境参数的编译,得到所述测试用例集合。
可选的,所述利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果之后,所述方法还包括:
利用预构建的监控服务,对各个镜像执行容器产生的所述检测结果进行实时监控,并通报显示为异常的检测结果。
可选的,所述从待接口测试的系统中获取各个待测试接口的端口地址之前,所述方法还包括:
获取用户输入的登录密码,将所述登录密码与待接口测试的系统中预存储的校验信息进行验证,当验证通过时,得到待接口测试的系统调取各个待测试接口的端口地址的权限。
为了解决上述问题,本发明还提供一种分布式接口测试装置,所述装置包括:
端口获取模块,用于从待接口测试的系统中获取各个待测试接口的端口地址;
抓包模块,用于对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据;
测试用例生成模块,用于利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合;
测试模块,用于封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器,及根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以实现上述所述的分布式接口测试方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的分布式接口测试方法。
本发明实施例中,获取各个待测试接口的端口地址,根据待接口测试的系统抓包出的数据传输记录以及所述端口地址,可以获取每个待测试接口的请求数据,再通过用例构建服务将各个请求数据编译成每个待测试接口的待执行测试用例集合,因此,测试用例不是连续的,进一步通过将自动执行工具进行封装、镜像操作,得到多个镜像执行容器,利用多个镜像执行容器同时处理不同待测试接口的测试用例集合,实现接口测试的分布式进行,提高接口测试效率。因此,本发明实施例解决了接口测试过程的总体执行时间过长的问题。
附图说明
图1为本发明一实施例提供的分布式接口测试方法的流程示意图;
图2为本发明图1提供的分布式接口测试方法其中一个步骤的详细流程示意图;
图3为本发明一实施例提供的分布式接口测试装置的模块示意图;
图4为本发明一实施例提供的实现分布式接口测试方法的电子设备的内部结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本申请实施例提供一种分布式接口测试方法。所述分布式接口测试方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述分布式接口测试方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等。
参照图1所示,为本发明一实施例提供的分布式接口测试方法的流程示意图。在本发明实施例中,所述分布式接口测试方法包括:
S1、从待接口测试的系统中获取各个待测试接口的端口地址。
详细地,本发明实施例中,用户可以登录所述待接口测试的系统,并通过调用系统管理接口,从所述待接口测试的系统获取各个待测试接口的端口地址。
详细的,本发明实施例中,所述从待接口测试的系统中获取各个待测试接口的端口地址之前,所述方法还包括:
获取用户输入的登录密码,将所述登录密码与待接口测试的系统中预存储的校验信息进行验证,当验证通过时,得到待接口测试的系统调取各个待测试接口的端口地址的权限。
本发明实施例中,利用用户输入的登录密码进行验证,验证通过后,获取待接口测试的系统进行数据调取的权限。根据待接口测试的系统中的查询工具,输入预设查询条件,查询得到所述查询条件相关的待测试接口的端口地址。
S2、对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据。
所述数据传输记录是指,网页中前端页面与后台服务之间传输的请求数据与响应数据,其中,所述请求数据是指在所述接口测试用例执行过程中,安装所述软件产品的网页及服务器的交互方式,包括,但不限于,对资源的请求方法、资源的标识符及使用的协议。所述响应数据则为服务器根据请求数据而调取出的数据。
详细的,如图2所示,本发明实施例中,所述对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据,包括:
S21、获取所述待接口测试的系统的网页,利用开发者工具,根据网页开发者协议,抓包所述网页的网络数据传输情况,得到所述网页的请求记录集合;
S22、将所述请求记录集合从超文本标记语言形式输出为文本形式,得到请求记录表格;
S23、利用所述端口地址,从所述请求记录表表格中筛选属性中包含所述端口地址的请求记录文本,得到所述请求数据。
本发明实施例中的网页是通过Chrome浏览器运行的,利用所述Chrome浏览器中的开发者工具中的Network接口、XHR接口,查询所述网页与服务器之间的传输的请求数据,并所述网页与服务器之间的传输的请求数据统一输出为所述请求记录集合,其中,所述请求记录集合为超文本标记语言形式(HTML),只能在前端页面中使用,本发明实施例需要将将所述请求记录集合从超文本标记语言形式输出为文本形式(Excel),得到请求记录表格。
进一步,根据所述端口地址,查询所述请求记录表格,得到每个端口地址对应的待测试接口中的请求数据。
S3、利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合。
详细的,本发明实施例中,所述利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合,包括:
根据所述用例构建服务中的用例构建规则中的标注,对所述请求数据进行不同环境参数的编译,得到所述测试用例集合。
本发明实施例中,所述用例构建服务是一种根据所述用例构建规则,将预设的不同参数请求数据进行组合,生成测试用例集合的程序。
其中,所述用例构建规则包括等价类、边界值、场景法及参数组合法等多种测试用例的构建规则。本发明实施例根据所述用例构建规则中的各种规则,将所述请求数据进行请求头地址、请求方式等各个方面进行编译,得到所述测试用例集合。
S4、封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器。
本发明实施例将获取到的自动执行工具中的可执行代码与运行环境封装到一起,保证封装后仍能够正常启动自动化的执行动作。通过镜像复制操作,获取多个镜像执行容器,并对每一个镜像执行容器进行唯一IP地址编号,用于后续执行测试过程之前的测试用例分配。
S5、根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
本发明实施例中,所述测试工程要求是指预设的测试计划,包括各个镜像执行容器的测试用例分配情况等。
本发明实施例根据所述预设的测试工程要求,将每一个待测试接口的端口地址分配给一个镜像执行容器进行同时测试,或将各个待测试接口进行分组测试,每一个镜像执行容器执行一组待测试接口的测试过程。
本发明实施例的各个镜像执行容器独立进行,当一个镜像执行容器中产生响应数据集合时,可以将执行结果直接进行输出,无需等待。
详细的,本发明实施例中,所述利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果,包括:
利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,得到响应数据集合;
判断所述响应集合是否与预设的响应期望数据集合相同,根据所述判断得到的结果得到所述待测试接口对应的检测结果。
详细的,本发明实施例中,所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果之后,所述方法还包括:
利用预构建的监控服务,对各个镜像执行容器产生的所述检测结果进行实时监控,将显示为异常的检测结果进行通报。
进一步的,本发明实施例中,所述利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,包括:
步骤A、提取所述测试用例集合中一个未被提取过的测试用例,并对所述测试用例进行环境专属配置;
每个测试用例运行时都需要测试用例独特的专属运行环境,在所述测试工程要求分配任务时,本发明实施例根据任务分配情况及各个镜像执行容器的IP地址,将各个测试用例对应专属环境配置参数,提前导入各个镜像执行容器中,利用所述专属环境配置参数对所述镜像执行容器进行专属环境配置。
步骤B、利用所述镜像执行容器,在所述环境专属配置中执行所述测试用例,得到所述测试用例的响应数据;
步骤C、执行预设的容器环境清理操作,消除所述测试用例执行后产生的影响,并返回上述步骤A的操作,直至所述测试用例集合中的测试用例全部遍历完成,输出所有响应数据。
本发明实施例中由于不确定上一条测试用例的执行结果对测试环境的影响,因此需要把涉及到上一条执行的测试用例的相关数据进行初始化,其中,所述初始化操作及所述容器环境清理操作均通过调用其他的接口来完成。
本发明实施例在每个镜像执行容器中,执行一组测试用例集合,产生一组响应集合时,调取所述测试用例集合对应的响应期望数据集合,并将所述响应集合与所述响应期望数据集合进行对比,并筛选出所述响应集合与所述响应期望无法对应的部分作为异常的检测结果。
本发明实施例中,获取各个待测试接口的端口地址,根据待接口测试的系统抓包出的数据传输记录以及所述端口地址,可以获取每个待测试接口的请求数据,再通过用例构建服务将各个请求数据编译成每个待测试接口的待执行测试用例集合,因此,测试用例不是连续的,进一步通过将自动执行工具进行封装、镜像操作,得到多个镜像执行容器,利用多个镜像执行容器同时处理不同待测试接口的测试用例集合,实现接口测试的分布式进行,提高接口测试效率。因此,本发明实施例解决了接口测试过程的总体执行时间过长的问题。
如图3所示,是本发明分布式接口测试装置的功能模块图。
本发明所述分布式接口测试装置100可以安装于电子设备中。根据实现的功能,所述分布式接口测试装置可以包括端口获取模块101、抓包模块102、测试用例生成模块103以及测试模块104。本发所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述端口获取模块101,用于从待接口测试的系统中获取各个待测试接口的端口地址。
详细地,本发明实施例中,用户可以登录所述待接口测试的系统,并通过调用系统管理接口,从所述待接口测试的系统获取各个待测试接口的端口地址。
详细的,本发明实施例中,所述端口获取模块101在从待接口测试的系统中获取各个待测试接口的端口地址之前,还执行:
获取用户输入的登录密码,将所述登录密码与待接口测试的系统中预存储的校验信息进行验证,当验证通过时,得到待接口测试的系统调取各个待测试接口的端口地址的权限。
本发明实施例中,利用用户输入的登录密码进行验证,验证通过后,获取待接口测试的系统进行数据调取的权限。根据待接口测试的系统中的查询工具,输入预设查询条件,查询得到所述查询条件相关的待测试接口的端口地址。
所述抓包模块102,用于对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据。
所述数据传输记录是指,网页中前端页面与后台服务之间传输的请求数据与响应数据,其中,所述请求数据是指在所述接口测试用例执行过程中,安装所述软件产品的网页及服务器的交互方式,包括,但不限于,对资源的请求方法、资源的标识符及使用的协议。所述响应数据则为服务器根据请求数据而调取出的数据。
详细的,本发明实施例中,所述抓包模块102在对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据时,具体执行:
获取所述待接口测试的系统的网页,利用开发者工具,根据网页开发者协议,抓包所述网页的网络数据传输情况,得到所述网页的请求记录集合;
将所述请求记录集合从超文本标记语言形式输出为文本形式,得到请求记录表格;
利用所述端口地址,从所述请求记录表表格中筛选属性中包含所述端口地址的请求记录文本,得到所述请求数据。
本发明实施例中的网页是通过Chrome浏览器运行的,利用所述Chrome浏览器中的开发者工具中的Network接口、XHR接口,查询所述网页与服务器之间的传输的请求数据,并所述网页与服务器之间的传输的请求数据统一输出为所述请求记录集合,其中,所述请求记录集合为超文本标记语言形式(HTML),只能在前端页面中使用,本发明实施例需要将将所述请求记录集合从超文本标记语言形式输出为文本形式(Excel),得到请求记录表格。
进一步,根据所述端口地址,查询所述请求记录表格,得到每个端口地址对应的待测试接口中的请求数据。
所述测试用例生成模块103,用于利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合。
详细的,本发明实施例中,所述测试用例生成模块103在利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合时,具体执行:
根据所述用例构建服务中的用例构建规则中标注,对所述请求数据进行不同环境参数的编译,得到所述测试用例集合。
本发明实施例中,所述用例构建服务是一种根据所述用例构建规则,将预设的不同参数请求数据进行组合,生成测试用例集合的程序。
其中,所述用例构建规则包括等价类、边界值、场景法及参数组合法等多种测试用例的构建规则。本发明实施例根据所述用例构建规则中的各种规则,将所述请求数据进行请求头地址、请求方式等各个方面进行编译,得到所述测试用例集合。
所述测试模块104,用于封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器,及根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
本发明实施例将获取到的自动执行工具中的可执行代码与运行环境封装到一起,保证封装后仍能够正常启动自动化的执行动作。通过镜像复制操作,获取多个镜像执行容器,并对每一个镜像执行容器进行唯一IP地址编号,用于后续执行测试过程之前的测试用例分配。
本发明实施例根据所述预设的测试工程要求,将每一个待测试接口的端口地址分配给一个镜像执行容器进行同时测试,或将各个待测试接口进行分组测试,每一个镜像执行容器执行一组待测试接口的测试过程。
本发明实施例的各个镜像执行容器独立进行,当一个镜像执行容器中产生响应数据集合时,可以将执行结果直接进行输出,无需等待。
详细的,本发明实施例中,所述所述测试模块104在利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果时,具体执行:
详细的,本发明实施例中,所述利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果,包括:
利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,得到响应数据集合;
判断所述响应集合是否与预设的响应期望数据集合相同,根据所述判断得到的结果得到所述待测试接口对应的检测结果。
具体的,本发明实施例根据预设的测试工程要求,将每一个待测试接口的端口地址分配给一个镜像执行容器进行同时测试,或将各个待测试接口进行分组测试,每一个镜像执行容器执行一组待测试接口的测试过程。
详细的,本发明实施例中,所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果之后,所述方法还包括:
利用预构建的监控服务,对各个镜像执行容器产生的所述检测结果进行实时监控,将显示为异常的检测结果进行通报。
本发明实施例的各个镜像执行容器进行,当一个镜像执行容器中产生响应数据集合时,可以将执行结果直接进行输出,无需等待。
进一步的,本发明实施例中,所述所述测试模块104在利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行时,具体执行:
功能D、提取所述测试用例集合中一个未被提取过的测试用例,并对所述测试用例进行环境专属配置。
每个测试用例运行时都需要测试用例独特的专属运行环境,在所述测试工程要求分配任务时,本发明实施例根据任务分配情况及各个镜像执行容器的IP地址,将各个测试用例对应专属环境配置参数,提前导入各个镜像执行容器中,利用所述专属环境配置参数对所述镜像执行容器进行专属环境配置。
功能E、利用所述镜像执行容器,在所述环境专属配置中执行所述测试用例,得到所述测试用例的响应数据;
功能F、执行预设的容器环境清理操作,消除所述测试用例执行后产生的影响,并返回上述功能D的操作,直至所述测试用例集合中的测试用例全部遍历完成,输出所有响应数据。
本发明实施例中由于不确定上一条测试用例的执行结果对测试环境的影响,因此需要把涉及到上一条执行的测试用例的相关数据进行初始化,其中,所述初始化操作及所述容器环境清理操作均通过调用其他的接口来完成。
本发明实施例在每个镜像执行容器中,执行一组测试用例集合,产生一组响应集合时,调取所述测试用例集合对应的响应期望数据集合,并将所述响应集合与所述响应期望数据集合进行对比,并筛选出所述响应集合与所述响应期望无法对应的部分作为异常的检测结果。
如图4所示,是本发明实现分布式接口测试方法的电子设备的结构示意图。
所述电子设备可以包括处理器10、存储器11、通信总线12以及通信接口13,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如分布式接口测试程序。
其中,所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(ControlUnit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如执行分布式接口测试程序等),以及调用存储在所述存储器11内的数据,以执行电子设备的各种功能和处理数据。
所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备的应用软件及各类数据,例如分布式接口测试程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述通信总线12可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。
所述通信接口13用于上述电子设备与其他设备之间的通信,包括网络接口和用户接口。可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。所述用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
图4仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图4示出的结构并不构成对所述电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备中的所述存储器11存储的分布式接口测试程序是多个计算机程序的组合,在所述处理器10中运行时,可以实现:
从待接口测试的系统中获取各个待测试接口的端口地址;
对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据;
利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合;
封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器;
根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
具体地,所述处理器10对上述计算机程序的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个非易失性计算机可读取存储介质中。所述计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备的处理器所执行时,可以实现:
从待接口测试的系统中获取各个待测试接口的端口地址;
对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据;
利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合;
封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器;
根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种分布式接口测试方法,其特征在于,所述方法包括:
从待接口测试的系统中获取各个待测试接口的端口地址;
对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据;
利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合;
封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器;
根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
2.如权利要求1所述的分布式接口测试方法,其特征在于,所述对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据,包括:
获取所述待接口测试的系统的网页,利用开发者工具,根据网页开发者协议,抓包所述网页的网络数据传输情况,得到所述网页的请求记录集合;
将所述请求记录集合从超文本标记语言形式输出为文本形式,得到请求记录表格;
利用所述端口地址,从所述请求记录表表格中筛选属性中包含所述端口地址的请求记录文本,得到所述请求数据。
3.如权利要求1所述的分布式接口测试方法,其特征在于,所述利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果,包括:
利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,得到响应数据集合;
判断所述响应集合是否与预设的响应期望数据集合相同,根据所述判断得到的结果得到所述待测试接口对应的检测结果。
4.如权利要求3所述的分布式接口测试方法,其特征在于,所述利用所述镜像执行容器对所述测试用例集合中的各个测试用例进行自动化执行,包括:
步骤A、提取所述测试用例集合中一个未被提取过的测试用例,并对所述测试用例进行环境专属配置;
步骤B、利用所述镜像执行容器,在所述环境专属配置中执行所述测试用例,得到所述测试用例的响应数据;
步骤C、执行预设的容器环境清理操作,并返回上述步骤A的操作,直至所述测试用例集合中的测试用例全部遍历完成。
5.如权利要求1所述的分布式接口测试方法,其特征在于,所述利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合,包括:
根据所述用例构建服务中的用例构建规则中的标注,对所述请求数据进行不同环境参数的编译,得到所述测试用例集合。
6.如权利要求1所述的分布式接口测试方法,其特征在于,所述利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果之后,所述方法还包括:
利用预构建的监控服务,对各个镜像执行容器产生的所述检测结果进行实时监控,并通报显示为异常的检测结果。
7.如权利要求1所述的分布式接口测试方法,其特征在于,所述从待接口测试的系统中获取各个待测试接口的端口地址之前,所述方法还包括:
获取用户输入的登录密码,将所述登录密码与待接口测试的系统中预存储的校验信息进行验证,当验证通过时,得到待接口测试的系统调取各个待测试接口的端口地址的权限。
8.一种分布式接口测试装置,其特征在于,所述装置包括:
端口获取模块,用于从待接口测试的系统中获取各个待测试接口的端口地址;
抓包模块,用于对所述待接口测试的系统进行抓包,得到数据传输记录,并根据所述端口地址,查询所述数据传输记录,得到各个待测试接口的请求数据;
测试用例生成模块,用于利用预构建的用例构建服务,对各个所述请求数据进行测试用例自动编译,得到所有待测试接口对应的待执行测试用例集合;
测试模块,用于封装自动执行工具及所述自动执行工具的运行环境,得到测试执行容器,将所述测试执行容器进行镜像复制,得到多个镜像执行容器,及根据预设的测试工程要求,利用所述多个镜像执行容器执行所述测试用例集合,得到各个待测试接口对应的检测结果。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任意一项所述的分布式接口测试方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任意一项所述的分布式接口测试方法。
CN202110518005.3A 2021-05-12 2021-05-12 分布式接口测试方法、装置、电子设备及存储介质 Pending CN113138929A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110518005.3A CN113138929A (zh) 2021-05-12 2021-05-12 分布式接口测试方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110518005.3A CN113138929A (zh) 2021-05-12 2021-05-12 分布式接口测试方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN113138929A true CN113138929A (zh) 2021-07-20

Family

ID=76817546

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110518005.3A Pending CN113138929A (zh) 2021-05-12 2021-05-12 分布式接口测试方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113138929A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113704769A (zh) * 2021-08-25 2021-11-26 深圳市中博科创信息技术有限公司 人才管理系统的安全监控方法、装置、设备及存储介质
CN113704109A (zh) * 2021-08-30 2021-11-26 康键信息技术(深圳)有限公司 前后端数据交互方法、装置、电子设备及存储介质
CN114020554A (zh) * 2021-10-30 2022-02-08 江苏信而泰智能装备有限公司 一种测试仪的端口隔离方法和具有端口隔离功能的测试仪
CN114113711A (zh) * 2021-11-30 2022-03-01 武汉天喻信息产业股份有限公司 一种多接口并行测试的方法和系统
CN115484187A (zh) * 2022-11-02 2022-12-16 江苏博云科技股份有限公司 容器环境下容器网络接口测试方法、设备及存储介质
CN117435507A (zh) * 2023-12-20 2024-01-23 天津华来科技股份有限公司 自适应通用退避测试方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959080A (zh) * 2018-06-27 2018-12-07 郑州云海信息技术有限公司 一种基于UnitTest并行执行的自动化测试方法
CN110083535A (zh) * 2019-04-22 2019-08-02 网宿科技股份有限公司 一种软件测试方法及装置
CN110232016A (zh) * 2019-03-08 2019-09-13 上海蔚来汽车有限公司 接口测试用例生成方法、装置及控制器和介质
CN110532169A (zh) * 2019-07-08 2019-12-03 平安科技(深圳)有限公司 接口测试用例生成方法、装置、计算机设备及存储介质
CN112765043A (zh) * 2021-03-16 2021-05-07 上饶市中科院云计算中心大数据研究院 一种基于docker的自动化测试方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108959080A (zh) * 2018-06-27 2018-12-07 郑州云海信息技术有限公司 一种基于UnitTest并行执行的自动化测试方法
CN110232016A (zh) * 2019-03-08 2019-09-13 上海蔚来汽车有限公司 接口测试用例生成方法、装置及控制器和介质
CN110083535A (zh) * 2019-04-22 2019-08-02 网宿科技股份有限公司 一种软件测试方法及装置
CN110532169A (zh) * 2019-07-08 2019-12-03 平安科技(深圳)有限公司 接口测试用例生成方法、装置、计算机设备及存储介质
CN112765043A (zh) * 2021-03-16 2021-05-07 上饶市中科院云计算中心大数据研究院 一种基于docker的自动化测试方法和装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113704769A (zh) * 2021-08-25 2021-11-26 深圳市中博科创信息技术有限公司 人才管理系统的安全监控方法、装置、设备及存储介质
CN113704109A (zh) * 2021-08-30 2021-11-26 康键信息技术(深圳)有限公司 前后端数据交互方法、装置、电子设备及存储介质
CN113704109B (zh) * 2021-08-30 2023-10-20 康键信息技术(深圳)有限公司 前后端数据交互方法、装置、电子设备及存储介质
CN114020554A (zh) * 2021-10-30 2022-02-08 江苏信而泰智能装备有限公司 一种测试仪的端口隔离方法和具有端口隔离功能的测试仪
CN114113711A (zh) * 2021-11-30 2022-03-01 武汉天喻信息产业股份有限公司 一种多接口并行测试的方法和系统
CN115484187A (zh) * 2022-11-02 2022-12-16 江苏博云科技股份有限公司 容器环境下容器网络接口测试方法、设备及存储介质
CN117435507A (zh) * 2023-12-20 2024-01-23 天津华来科技股份有限公司 自适应通用退避测试方法及系统

Similar Documents

Publication Publication Date Title
CN113138929A (zh) 分布式接口测试方法、装置、电子设备及存储介质
CN112506779A (zh) 软件接口测试方法、装置、电子设备及存储介质
CN112015663A (zh) 测试数据录制方法、装置、设备及介质
CN114398194A (zh) 数据收集方法、装置、电子设备及可读存储介质
CN112506559A (zh) 基于网关的灰度发布方法、装置、电子设备及存储介质
CN112527664A (zh) 生成测试用例的方法、装置、电子设备及存储介质
CN112685384A (zh) 数据迁移方法、装置、电子设备及存储介质
CN113240351A (zh) 业务数据一致性检查方法、装置、电子设备及介质
CN112579452A (zh) 软件自动化测试方法、装置、设备及存储介质
CN112579475A (zh) 代码测试方法、装置、设备及可读存储介质
CN113434397B (zh) 任务系统的测试方法、装置、电子设备及存储介质
CN115145870A (zh) 失败任务原因定位方法、装置、电子设备及存储介质
CN114896164A (zh) 接口优化方法、装置、电子设备及存储介质
CN115544566A (zh) 日志脱敏方法、装置、设备及存储介质
CN114116488A (zh) 测试覆盖率信息获取方法、装置、设备及存储介质
CN115033489A (zh) 代码资源检测方法、装置、电子设备及存储介质
CN112527655A (zh) 软件版本质量异常检测方法、装置、电子设备及存储介质
CN113469649A (zh) 项目进度分析方法、装置、电子设备及存储介质
CN113051171A (zh) 接口测试方法、装置、设备及存储介质
CN112667244A (zh) 数据校验方法、装置、电子设备及计算机可读存储介质
CN113268514A (zh) 多维数据统计方法、装置、电子设备及存储介质
CN113064797B (zh) 前端监控方法、装置、电子设备及存储介质
CN115203038A (zh) 覆盖率检测方法、装置、电子设备及计算机可读存储介质
CN112527282B (zh) 前端页面校验方法、装置、电子设备及存储介质
CN113419916B (zh) 风控检查程序不间断运行方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20211015

Address after: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant after: Shenzhen saiante Technology Service Co.,Ltd.

Address before: 1-34 / F, Qianhai free trade building, 3048 Xinghai Avenue, Mawan, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong 518000

Applicant before: Ping An International Smart City Technology Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20210720