CN110955600A - 接口测试方法及装置 - Google Patents

接口测试方法及装置 Download PDF

Info

Publication number
CN110955600A
CN110955600A CN201911181665.6A CN201911181665A CN110955600A CN 110955600 A CN110955600 A CN 110955600A CN 201911181665 A CN201911181665 A CN 201911181665A CN 110955600 A CN110955600 A CN 110955600A
Authority
CN
China
Prior art keywords
interface
data
interface test
test
script
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.)
Granted
Application number
CN201911181665.6A
Other languages
English (en)
Other versions
CN110955600B (zh
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.)
Bank of China Ltd
Original Assignee
Bank of China 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 Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN201911181665.6A priority Critical patent/CN110955600B/zh
Publication of CN110955600A publication Critical patent/CN110955600A/zh
Application granted granted Critical
Publication of CN110955600B publication Critical patent/CN110955600B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/3684Test management for test design, e.g. generating new test cases

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)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种接口测试方法及装置,所述方法包括:当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;提取各个标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;调用预设的python脚本,将每个标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据转化成代码,生成与每个标准接口测试数据对应的接口测试脚本;调用脚本执行命令,依次执行每个接口测试脚本,生成对应的执行结果;将执行结果写入结果文件,并将结果文件进行反馈及保存。应用本发明,开发人员不需重复的编写测试接口的代码,使进行接口测试的过程更加的简便,并且提高了测试效率,以满足目前的测试需求。

Description

接口测试方法及装置
技术领域
本发明涉及计算机技术领域,特别涉及一种接口测试方法及装置。
背景技术
随着计算机技术的高速发展,软件开发人员开发出了多种应用程序,各种类型的应用程序使人们的生活更加的便捷和多彩。软件开发人员在开发应用程序的过程中,对应用程序的接口进行测试是必不可少的环节。
软件开发人员现在通常使用SOAPUI进行接口测试,SOAPUl是由标准的Java Swing开发的一个开源的GUl自动化测试工具,可通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。使用SOAPUI进行接口测试时,软件开发人员将准备好的一条接口测试数据,依据接口测试数据在SOAPUI新建项目-创建测试用例-运行,最终输出对接口的测试结果。
发明人研究发现,使用SOAPUI进行接口测试时,软件开发人员对每一个进行测试的接口都需要新建线程组、添加http信息头管理器,编写对应的测试程序,并填写接口名称、接口地址、以及检查点等信息,繁复的过程导致测试的效率下降,难以满足现有的测试需求。
发明内容
有鉴于此,本发明提供一种接口测试方法及装置,用于减少开发人员每次进行接口测试时都需要编写代码的工作,提高进行接口测试的效率,满足更大的测试需求。
为实现上述目的,本发明提供如下技术方案:
一种接口测试方法,包括:
当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;
提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;
调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;
调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果;
将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。
上述的方法,可选的,所述标准接口测试数据的设置过程包括:
获取数据模板,并对所述数据模板进行解析,确定所述数据模板中每个字段的字段属性;
获取各个接口测试数据,并确定每个所述接口测试数据中的各个测试参数;
对于每个所述接口测试数据,依据所述字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,并将每个所述测试参数填入与其对应的字段中,完成所述接口测试数据的标准化,生成与所述接口测试数据对应的标准接口测试数据。
上述的方法,可选的,所述调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本,包括:
对于每个所述标准接口测试数据,确定所述标准接口测试数据中的所述接口头部信息的各个接口头部参数、所述接口测试案例数据的各个案例参数以及所述接口测试类型数据的各个测试类型参数;
使用预设的python脚本,将每个所述标准接口测试数据中的各个所述接口头部参数转化成与所述接口头部信息对应的接口头部信息代码、各个所述案例参数转化成与所述接口测试案例数据对应的案例代码以及各个所述测试类型参数转化成与所述接口测试类型数据对应的测试类型代码;
将每个所述标准接口测试数据的所述接口头部信息代码、所述案例代码以及所述测试类型代码关联成组合代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
上述的方法,可选的,所述将所述结果文件进行反馈及保存,包括:
将所述结果文件进行压缩,得到压缩后的结果文件,并将所述压缩后的结果文件发送至预设的内存进行保存;
调用预设的通知插件,并确定所述通知插件的配置信息,所述配置信息包含反馈地址;
依据所述反馈地址,发送所述压缩后的结果文件。
上述的方法,可选的,还包括:
为每个所述接口测试脚本创建脚本版本号;
将每个所述接口测试脚本与其对应的脚本版本号以键值对的形式提交至预设的脚本数据库。
上述的方法,可选的,还包括:
依据所述执行结果,确定执行失败的各个所述接口测试脚本;
将执行失败的各个所述接口测试脚本发送至预设的分析平台,触发所述分析平台分析各个所述接口测试脚本执行失败的原因。
一种接口测试装置,包括:
获取单元,用于当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;
提取单元,用于提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;
调用单元,用于调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;
执行单元,用于调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果;
反馈单元,用于将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。
上述的装置,可选的,还包括:
获取子单元,用于获取数据模板,并对所述数据模板进行解析,确定所述数据模板中每个字段的字段属性;
第一确定子单元,用于获取各个接口测试数据,并确定每个所述接口测试数据中的各个测试参数;
生成子单元,用于对于每个所述接口测试数据,依据所述字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,并将每个所述测试参数填入与其对应的字段中,完成所述接口测试数据的标准化,生成与所述接口测试数据对应的标准接口测试数据。
上述的装置,可选的,所述调用单元,包括:
第二确定子单元,用于对于每个所述标准接口测试数据,确定所述标准接口测试数据中的所述接口头部信息的各个接口头部参数、所述接口测试案例数据的各个案例参数以及所述接口测试类型数据的各个测试类型参数;
转化子单元,用于使用预设的python脚本,将每个所述标准接口测试数据中的各个所述接口头部参数转化成与所述接口头部信息对应的接口头部信息代码、各个所述案例参数转化成与所述接口测试案例数据对应的案例代码以及各个所述测试类型参数转化成与所述接口测试类型数据对应的测试类型代码;
关联子单元,用于将每个所述标准接口测试数据的所述接口头部信息代码、所述案例代码以及所述测试类型代码关联成组合代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
上述的装置,可选的,所述反馈单元,包括:
压缩子单元,用于将所述结果文件进行压缩,得到压缩后的结果文件,并将所述压缩后的结果文件发送至预设的内存进行保存;
第三确定子单元,用于调用预设的通知插件,并确定所述通知插件的配置信息,所述配置信息包含反馈地址;
发送子单元,用于依据所述反馈地址,发送所述压缩后的结果文件。
上述的装置,可选的,还包括:
创建单元,用于为每个所述接口测试脚本创建脚本版本号;
提交单元,用于将每个所述接口测试脚本与其对应的脚本版本号以键值对的形式提交至预设的脚本数据库。
上述的装置,可选的,还包括:
确定单元,用于依据所述执行结果,确定执行失败的各个所述接口测试脚本;
分析单元,用于将执行失败的各个所述接口测试脚本发送至预设的分析平台,触发所述分析平台分析各个所述接口测试脚本执行失败的原因。
与现有技术相比,本发明具有以下优点:
本发明提供一种接口测试方法,所述方法包括:当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果;将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。应用本发明,使用标准化的标准接口测试数据,使用预设的python脚本生成接口测试脚本时,可有序的生成各个接口测试脚本,通过依次执行各个所述接口测试脚本,完成接口测试;应用本发明,开发人员无需重复性的编写测试代码,使测试接口的过程更加的便捷,提高测试的效率,满足更大的测试需求。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种接口测试方法的方法流程图;
图2为本发明实施例提供的一种接口测试方法的另一方法流程图;
图3为本发明实施例提供的一种接口测试方法的另一方法流程图;
图4为本发明实施例提供的一种接口测试装置的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种接口测试方法,该方法可用于测试各种应用系统中各个接口;优选的,本发明可用于银行系统中办理业务时应用的业务接口的测试。本发明实施例提供的方法的执行主体可为应用本发明的系统中的处理器或是服务器。
本发明实施例提供的方法中,所述方法的方法流程图如图1所示,具体如下所述:
S101、当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据。
本发明实施例提供的方法中,当处理器接收到开发人员发送的接口测试指令时,解析所述接口测试指令,并以及所述接口测试指令中的内容获取数据库中预设的数据模板中的各个标准接口测试数据;需要说明的是,可获取所述数据模板中的部分标准接口测试数据,也可获取所述数据模板中的全部标准接口测试数据;所述数据模板中预先保存各个标准接口测试数据,将存有各个标准接口测试数据的数据模板保存在数据库中。
S102、提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据。
本发明实施例提供的方法中,从所述数据模板中获取各个所述标准接口测试数据之后,可依次提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据,也可一次性全部提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;以获取每个所述标准接口测试数据的接口头部信息、接口测试案例数据以及接口测试类型数据。
S103、调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
本发明实施例提供的方法中,应用预设的python脚本,所述python脚本是应用python语言编写的程序代码;将每个所述标准接口测试数据中的所述接口头部信息转化成对应的代码、将所述接口测试案例数据转化成对应的代码以及将所述接口测试类型数据转化成对应的代码,并将与所述接口头部信息对应的代码、与所述接口测试案例数据对应的代码以及与所述接口测试类型数据对应的代码关联组合,生成与每个所述标准接口测试数据对应的接口测试脚本。需要说明的是,所述接口测试脚本的脚本类型可以为RobotFramework脚本。需要说明的是,可将所述接口测试脚本在预设的可视化界面中进行展示。
S104、调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果。
本发明实施例提供的方法中,调用预设的脚本执行命令,所述脚本执行命令可以具体为Robot Framework命令;调用所述脚本执行命令后,依次执行各个所述接口测试脚本,并生成所述接口测试脚本执行后的执行结果,所述执行结果分为执行成功结果以及执行失败结果。进一步说明,当所述接口测试脚本执行完成时,即完成对接口的测试。
S105、将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。
本发明实施例提供的方法中,将每个所述接口测试脚本执行后生成的执行结果写入预设的结果文件中,并将所述结果文件进行反馈及保存,需要说明的是,可将所述结果文件反馈至预设的设备或是反馈至开发人员。
本发明实施例提供的方法中,当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;应用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果。通过应用本发明,使用保存在数据模板中的标准接口测试数据,并使用预设的python脚本生成与所述标准接口测试数据对应的接口测试脚本,通过调用脚本执行命令,依次执行各个接口测试脚本,以完成对接口的测试。通过应用预设的python脚本,自动生成接口测试脚本,从而不需要开发人员不断的编写进行测试的脚本,简化了开发人员编写代码的工作,提高了进行接口测试的效率。
本发明实施例提供的方法中,通过将测试的数据规范化、标准化,以使开发人员维护数据的工作更加简洁,通过应用数据模板,使数据规范化、标准化,以生成标准接口测试数据,所述标准接口测试数据的具体过程如图2所示,具体说明如下所述:
S201、获取数据模板,并对所述数据模板进行解析,确定所述数据模板中每个字段的字段属性。
本发明实施例提供的方法中,获取数据模板,所述数据模板为开发人员开发的数据模板,用于使进行测试的数据规范化和标准化;将所述数据模板进行解析,确定所述数据模板中每个字段的字段属性,需要说明的是,确定每个字段的字段属性可根据字段的属性标识进行确定,不同的属性标识表征不同的属性;所述数据模板中包含多个字段,不同的字段对应不同的字段属性。
S202、获取各个接口测试数据,并确定每个所述接口测试数据中的各个测试参数。
本发明实施例提供的方法中,获取开发人员输入的各个接口测试数据,将各个所述接口测试数据进行解析,确定每个所述接口测试数据中的各个测试参数;需要说明的是,所述测试参数中包含但不限于进行测试的接口的请求类型、接口服务地址、接口名称以及测试案例编号等。
S203、对于每个所述接口测试数据,依据所述字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,并将每个所述测试参数填入与其对应的字段中,完成所述接口测试数据的标准化,生成与所述接口测试数据对应的标准接口测试数据。
本发明实施例提供的方法中,依次将各个所述接口测试数据中的各个测试参数填入所述数据模板中对应的字段中;对于每个所述接口测试数据,依据各个所述字段的字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,需要说明的是,确定每个所述测试参数的参数属性,将与所述参数属性一致的字段属性的字段确定为所述测试参数对应的字段。将每个所述测试参数填入与其对应的字段中,完成对所述接口测试数据中的各个测试参数的规范化和标准化,以得到与所述接口测试数据对应的标准接口测试数据。
本发明实施例提供的方法中,通过应用开发人员开发的数据模板,将接口测试数据进行规范化和标准化,以高效化的利用标准化的接口测试数据,本发明提供一具体实例进行说明,具体内容如下所述:
对数据模板进行说明,所述数据模板中包含多个字段,所述数据模板中的各个字段可分为三类型,分别为:一种为接口头部信息类的字段、一种为接口测试案例类的字段以及另外一种为接口测试类的字段;不同类型的字段的字段数有所不同。
进一步说明,所述接口头部信息类的字段包含:Type字段、URL字段、API字段以及Version字段这4个字段,需要说明的是,所述Type字段用于保存表示接口请求类型的参数,所述URL字段用于保存表示接口服务地址的参数,所述API字段用于保存表示接口名称的参数,所述Version字段用于保存特殊头部参数。所述接口测试案例类的字段包括但不限于:测试案例编号字段、上送数据字段以及返回报文字段,所述测试案例编号字段用于保存测试案例编号;所述上送数据字段用于保存上送的数据;所述返回报文字段用于保存返回报文。所述接口测试类型的字段包括但不限于:测试轮次字段、案例权重字段、测试案例编号字段、功能码字段、测试类型字段、功能码名称字段、检核点字段、输入字段、输出字段以及作者字段;所述测试轮次字段用于保存将接口测试数据进行标准化时分配的编号;所述案例权重字段用于保存接口测试数据的权重值;所述测试案例编号字段用于保存测试案例编号;所述功能码名称字段用于保存接口的功能码参数;所述检核点字段用于保存检核点参数;所述输入字段用于保存上传报文的参数;所述输出字段用于保存返回报文的参数;所述作者用于保存编写测试案例的作者参数。
接收开发人员发送的各个接口测试数据,对每个所述接口测试参数进行解析,得到每个所述接口测试参数中的各个测试参数,各个所述测试参数包括但不限于:接口请求类型的参数、测试案例编号的参数、接口服务地址的参数、测试类型的参数等等,将各个测试参数填入所述数据模板对应的字段中,以使所述接口测试数据规范化以及标准化,并生成与所述接口测试数据对应的标准接口测试数据;需要说明的是,生成的标准接口测试数据中包含依据测试案例编号在预设的案例数据中获取的测试案例数据;通过将接口测试数据填入数据模板的字段中,以得到标椎化和规范化的标准接口测试数据。
本发明实施例提供的方法中,在测试接口的过程中,通过应用预设的python脚本,生成与所述标准测试数据对应的接口测试脚本;具体过程参照图3,具体说明下所述:
S301、对于每个所述标准接口测试数据,确定所述标准接口测试数据中的所述接口头部信息的各个接口头部参数、所述接口测试案例数据的各个案例参数以及所述接口测试类型数据的各个测试类型参数。
本发明实施例提供的方法中,对于每个所述标准接口测试数据,确定所述标准接口测试数据中的各个接口头部参数、所述接口测试案例数据中的各个案例参数以及所述接口测试类型数据的各个测试类型参数;需要说明的是,所述接口头部参数为进行测试的接口的头部信息参数;所述案例参数包含根据测试案例编号从案例数据库中获取的测试案例的参数;所述测试类型参数包含进行测试的接口可办理的业务类型,例如转账业务、在线缴费业务、还款业务等。
S302、使用预设的python脚本,将每个所述标准接口测试数据中的各个所述接口头部参数转化成与所述接口头部信息对应的接口头部信息代码、各个所述案例参数转化成与所述接口测试案例数据对应的案例代码以及各个所述测试类型参数转化成与所述接口测试类型数据对应的测试类型代码。
S303、将每个所述标准接口测试数据的所述接口头部信息代码、所述案例代码以及所述测试类型代码关联成组合代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
本发明实施例提供的方法中,使用预设的python脚本,生成与所述接口头部信息对应的接口头部信息代码,生成与所述接口测试案例数据对应的案例代码以及生成与所述接口测试类型数据对应的测试类型代码,并将所述标准接口测试数据对应的接口头部信息代码、案例代码以及测试类型代码关联成组合代码,以生成与所述接口测试案例数据对应的接口测试脚本。
需要说明的是,生成的接口测试脚本可在预设的可视化界面进行展示,在预设的可视化界面中按照脚本的层级逐层打开展示,需要说明的是,本发明中的接口测试脚本在可视化界面进行展示时,可将接口测试脚本中的底层操作以及公共逻辑和抽象化,抽象后的底层操作的具体形式可为APITestActions.txt;抽象后的公共逻辑的具体形式可为SingleAPILogic.txt。
本发明实施例提供的方法中,应用预设的python脚本生成与每个所述标准接口测试数据对应的接口测试脚本后,需要调用预设的脚本执行命令,执行各个接口测试脚本,以实现对接口的测试;通过使用python脚本生成接口测试脚本,将开发人员从编写测试代码的繁复工作中解放出来,并且提高了进行接口检测的效率,满足更大的接口测试需求。
本发明实施例提供的方法中,当生成的所有接口测试脚本均执行完成时,将对应的结果文件进行反馈并保存,将所述结果文件进行反馈的过程如下所述:
将所述结果文件进行压缩,得到压缩后的结果文件,并将所述压缩后的结果文件发送至预设的内存进行保存;
调用预设的通知插件,并确定所述通知插件的配置信息,所述配置信息包含反馈地址;
依据所述反馈地址,发送所述压缩后的结果文件。
本发明实施例提供的方法中,将所述结果文件进行压缩,得到压缩后的结果文件,将压缩后的结果文件发送至预设的内存进行保存,所述预设的内存可为本地内存,也可以为外部存储设备。
需要说明的是,所述通知插件,可以为邮件插件,所述邮件插件的配置信息可以具体为:需设定邮件服务器地址/端口、默认邮件格式/字符集、用户名/密码、邮件主题、邮件内容、接收邮件的邮件地址等信息;所述反馈地址为接收邮件的邮件地址,需要说明的是,所述接收邮件的邮件地址可以为管理员的邮件地址以及发起人邮件地址;可根据实际的应用设置反馈地址。需要说明的是,所述通知插件可应用Jenkins插件Email Extension进行配置,并根据需求,定义通知插件中的配置信息。需要说明的是,所述邮件通知中可设置查看详情链接,通过查看详情链接可直接查看邮件中的结果文件。
本发明实施例提供的方法中,还可将各个接口测试脚本进行提交,具体过程如下所述:为每个所述接口测试脚本创建脚本版本号;将每个所述接口测试脚本与其对应的脚本版本号以键值对的形式提交至预设的脚本数据库。
本发明实施例提供的方法中,通过为各个接口测试脚本创建脚本版本号,区分不同版本的接口测试脚本,将接口测试脚本提交至预设的脚本数据库,便于后期开发人员查找接口测试脚本,并分析接口测试脚本。
本发明实施例提供的方法中,依据所述执行结果,确定执行失败的各个所述接口测试脚本;将执行失败的各个所述接口测试脚本发送至预设的分析平台,触发所述分析平台分析执行失败的各个所述接口测试脚本执行失败的原因。
本发明实施例提供的方法中,通过将执行失败的各个接口测试脚本发送至预设的分析平台进行分析,得到每个执行失败的接口测试脚本的分析结果,以使开发人员依据所述分析结果调整接口测试数据或是修改接口测试脚本。
本发明实施例提供的方法中,当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据,提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据,并应用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本,并依次执行每个所述接口测试脚本,并生成接口测试执行后的执行结果,将每个所述执行结果写入预设的结果文件后,将所述结果文件进行保存并反馈。应用本发明,使用标准化的标准接口测试数据,并且应用预设的python脚本,生成与所述标准接口测试数据对应的接口测试脚本,依次执行各个所述接口测试脚本,完成对应的接口测试,开发人员不需要反复的编写需要进行测试的接口测试脚本,将开发人员从繁复的编写工作中解放出来,提高了进行接口测试的效率。
与图1对应的,本发明实施例还提供了一种接口测试装置,所述装置可设置于计算机中,或是应用本发明的系统中,所述装置的装置结构示意图如图4所示,具体说明如下所述:
获取单元401,用于当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;
提取单元402,用于提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;
调用单元403,用于调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;
执行单元404,用于调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果;
反馈单元405,用于将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。
本发明实施例提供的装置中,当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据,提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据,并应用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本,并依次执行每个所述接口测试脚本,并生成接口测试执行后的执行结果,将每个所述执行结果写入预设的结果文件后,将所述结果文件进行保存并反馈。应用本发明,使用标准化的标准接口测试数据,并且应用预设的python脚本,生成与所述标准接口测试数据对应的接口测试脚本,依次执行各个所述接口测试脚本,完成对应的接口测试,开发人员不需要反复的编写需要进行测试的接口测试脚本,将开发人员从繁复的编写工作中解放出来,提高了进行接口测试的效率。
本发明实施例提供的装置中,还包括:
获取子单元,用于获取数据模板,并对所述数据模板进行解析,确定所述数据模板中每个字段的字段属性;
第一确定子单元,用于获取各个接口测试数据,并确定每个所述接口测试数据中的各个测试参数;
生成子单元,用于对于每个所述接口测试数据,依据所述字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,并将每个所述测试参数填入与其对应的字段中,完成所述接口测试数据的标准化,生成与所述接口测试数据对应的标准接口测试数据。
本发明实施例提供的装置中,所述调用单元403,可以设置为:
第二确定子单元,用于对于每个所述标准接口测试数据,确定所述标准接口测试数据中的所述接口头部信息的各个接口头部参数、所述接口测试案例数据的各个案例参数以及所述接口测试类型数据的各个测试类型参数;
转化子单元,用于使用预设的python脚本,将每个所述标准接口测试数据中的各个所述接口头部参数转化成与所述接口头部信息对应的接口头部信息代码、各个所述案例参数转化成与所述接口测试案例数据对应的案例代码以及各个所述测试类型参数转化成与所述接口测试类型数据对应的测试类型代码;
关联子单元,用于将每个所述标准接口测试数据的所述接口头部信息代码、所述案例代码以及所述测试类型代码关联成组合代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
本发明实施例提供的装置中,所述反馈单元405,可以设置为:
压缩子单元,用于将所述结果文件进行压缩,得到压缩后的结果文件,并将所述压缩后的结果文件发送至预设的内存进行保存;
第三确定子单元,用于调用预设的通知插件,并确定所述通知插件的配置信息,所述配置信息包含反馈地址;
发送子单元,用于依据所述反馈地址,发送所述压缩后的结果文件。
本发明实施例提供的装置中,还可以设置为:
创建单元,用于为每个所述接口测试脚本创建脚本版本号;
提交单元,用于将每个所述接口测试脚本与其对应的脚本版本号以键值对的形式提交至预设的脚本数据库。
本发明实施例提供的装置中,还可以设置为:
确定单元,用于依据所述执行结果,确定执行失败的各个所述接口测试脚本;
分析单元,用于将执行失败的各个所述接口测试脚本发送至预设的分析平台,触发所述分析平台分析各个所述接口测试脚本执行失败的原因。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种接口测试方法,其特征在于,包括:
当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;
提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;
调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;
调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果;
将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。
2.根据权利要求1所述的方法,其特征在于,所述标准接口测试数据的设置过程包括:
获取数据模板,并对所述数据模板进行解析,确定所述数据模板中每个字段的字段属性;
获取各个接口测试数据,并确定每个所述接口测试数据中的各个测试参数;
对于每个所述接口测试数据,依据所述字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,并将每个所述测试参数填入与其对应的字段中,完成所述接口测试数据的标准化,生成与所述接口测试数据对应的标准接口测试数据。
3.根据权利要求1所述的方法,其特征在于,所述调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本,包括:
对于每个所述标准接口测试数据,确定所述标准接口测试数据中的所述接口头部信息的各个接口头部参数、所述接口测试案例数据的各个案例参数以及所述接口测试类型数据的各个测试类型参数;
使用预设的python脚本,将每个所述标准接口测试数据中的各个所述接口头部参数转化成与所述接口头部信息对应的接口头部信息代码、各个所述案例参数转化成与所述接口测试案例数据对应的案例代码以及各个所述测试类型参数转化成与所述接口测试类型数据对应的测试类型代码;
将每个所述标准接口测试数据的所述接口头部信息代码、所述案例代码以及所述测试类型代码关联成组合代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
4.根据权利要求1所述的方法,其特征在于,所述将所述结果文件进行反馈及保存,包括:
将所述结果文件进行压缩,得到压缩后的结果文件,并将所述压缩后的结果文件发送至预设的内存进行保存;
调用预设的通知插件,并确定所述通知插件的配置信息,所述配置信息包含反馈地址;
依据所述反馈地址,发送所述压缩后的结果文件。
5.根据权利要求1所述的方法,其特征在于,还包括:
为每个所述接口测试脚本创建脚本版本号;
将每个所述接口测试脚本与其对应的脚本版本号以键值对的形式提交至预设的脚本数据库。
6.根据权利要求1所述的方法,其特征在于,还包括:
依据所述执行结果,确定执行失败的各个所述接口测试脚本;
将执行失败的各个所述接口测试脚本发送至预设的分析平台,触发所述分析平台分析各个所述接口测试脚本执行失败的原因。
7.一种接口测试装置,其特征在于,包括:
获取单元,用于当接收到接口测试指令时,获取预设的数据模板中的各个标准接口测试数据;
提取单元,用于提取各个所述标准接口测试数据中的接口头部信息、接口测试案例数据以及接口测试类型数据;
调用单元,用于调用预设的python脚本,将每个所述标准接口测试数据中的所述接口头部信息、所述接口测试案例数据以及所述接口测试类型数据转化成代码,生成与每个所述标准接口测试数据对应的接口测试脚本;
执行单元,用于调用预设的脚本执行命令,依次执行每个所述接口测试脚本,并生成每个所述接口测试脚本的执行结果;
反馈单元,用于将每个所述执行结果写入预设的结果文件,并将所述结果文件进行反馈及保存。
8.根据权利要求7所述的装置,其特征在于,还包括:
获取子单元,用于获取数据模板,并对所述数据模板进行解析,确定所述数据模板中每个字段的字段属性;
第一确定子单元,用于获取各个接口测试数据,并确定每个所述接口测试数据中的各个测试参数;
生成子单元,用于对于每个所述接口测试数据,依据所述字段属性,确定所述接口测试数据中的每个所述测试参数在所述数据模板中对应的字段,并将每个所述测试参数填入与其对应的字段中,完成所述接口测试数据的标准化,生成与所述接口测试数据对应的标准接口测试数据。
9.根据权利要求7所述的装置,其特征在于,所述调用单元,包括:
第二确定子单元,用于对于每个所述标准接口测试数据,确定所述标准接口测试数据中的所述接口头部信息的各个接口头部参数、所述接口测试案例数据的各个案例参数以及所述接口测试类型数据的各个测试类型参数;
转化子单元,用于使用预设的python脚本,将每个所述标准接口测试数据中的各个所述接口头部参数转化成与所述接口头部信息对应的接口头部信息代码、各个所述案例参数转化成与所述接口测试案例数据对应的案例代码以及各个所述测试类型参数转化成与所述接口测试类型数据对应的测试类型代码;
关联子单元,用于将每个所述标准接口测试数据的所述接口头部信息代码、所述案例代码以及所述测试类型代码关联成组合代码,生成与每个所述标准接口测试数据对应的接口测试脚本。
10.根据权利要求7所述的装置,其特征在于,所述反馈单元,包括:
压缩子单元,用于将所述结果文件进行压缩,得到压缩后的结果文件,并将所述压缩后的结果文件发送至预设的内存进行保存;
第三确定子单元,用于调用预设的通知插件,并确定所述通知插件的配置信息,所述配置信息包含反馈地址;
发送子单元,用于依据所述反馈地址,发送所述压缩后的结果文件。
CN201911181665.6A 2019-11-27 2019-11-27 接口测试方法及装置 Active CN110955600B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911181665.6A CN110955600B (zh) 2019-11-27 2019-11-27 接口测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911181665.6A CN110955600B (zh) 2019-11-27 2019-11-27 接口测试方法及装置

Publications (2)

Publication Number Publication Date
CN110955600A true CN110955600A (zh) 2020-04-03
CN110955600B CN110955600B (zh) 2023-11-10

Family

ID=69977081

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911181665.6A Active CN110955600B (zh) 2019-11-27 2019-11-27 接口测试方法及装置

Country Status (1)

Country Link
CN (1) CN110955600B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930617A (zh) * 2020-07-31 2020-11-13 中国工商银行股份有限公司 基于数据对象化的自动化测试方法及装置
CN112131127A (zh) * 2020-09-28 2020-12-25 北京同邦卓益科技有限公司 接口测试方法、装置、系统及电子设备
CN112363907A (zh) * 2020-09-14 2021-02-12 杭州大搜车汽车服务有限公司 Dubbo接口的测试方法、装置、电子装置和存储介质
CN112988601A (zh) * 2021-04-29 2021-06-18 中国工商银行股份有限公司 测试脚本开发方法及装置
CN113094263A (zh) * 2021-03-30 2021-07-09 四川新网银行股份有限公司 一种基于模板化生成自动化接口测试的方法
CN113420194A (zh) * 2021-05-07 2021-09-21 上海汇付数据服务有限公司 展示数据的方法和系统

Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291608A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 测试脚本的生成方法、接口的订阅/注册方法及装置
CN107391379A (zh) * 2017-07-28 2017-11-24 武汉斗鱼网络科技有限公司 接口自动测试方法及装置
CN108399130A (zh) * 2018-02-28 2018-08-14 平安科技(深圳)有限公司 自动生成测试案例的方法、装置、设备及可读存储介质
CN109376091A (zh) * 2018-10-31 2019-02-22 中国银行股份有限公司 一种接口测试数据的生成方法及装置
CN109474488A (zh) * 2018-10-31 2019-03-15 中国银行股份有限公司 接口测试方法、装置及计算机设备
CN109634841A (zh) * 2018-10-26 2019-04-16 平安科技(深圳)有限公司 电子装置、接口自动化测试方法及存储介质
CN110096434A (zh) * 2019-03-28 2019-08-06 咪咕文化科技有限公司 一种接口测试方法及装置
CN110109817A (zh) * 2019-03-13 2019-08-09 深圳壹账通智能科技有限公司 接口自动化测试方法、装置、设备及存储介质
CN110245083A (zh) * 2019-06-11 2019-09-17 四川长虹电器股份有限公司 一种基于python的接口自动化测试方法
CN110297760A (zh) * 2019-05-22 2019-10-01 平安普惠企业管理有限公司 测试数据的构造方法、装置、设备及计算机可读存储介质
CN110309071A (zh) * 2019-06-27 2019-10-08 杭州数梦工场科技有限公司 测试代码的生成方法及模块、测试方法及系统
CN110427331A (zh) * 2019-09-03 2019-11-08 四川长虹电器股份有限公司 基于接口测试工具自动生成性能测试脚本的方法
CN110471842A (zh) * 2019-07-12 2019-11-19 平安普惠企业管理有限公司 一种测试方法、装置及计算机可读存储介质
WO2019218444A1 (zh) * 2018-05-14 2019-11-21 平安科技(深圳)有限公司 测试报告的生成方法、装置、设备及存储介质
CN110502425A (zh) * 2019-06-28 2019-11-26 平安银行股份有限公司 测试数据生成方法、装置、电子设备及存储介质

Patent Citations (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107291608A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 测试脚本的生成方法、接口的订阅/注册方法及装置
CN107391379A (zh) * 2017-07-28 2017-11-24 武汉斗鱼网络科技有限公司 接口自动测试方法及装置
CN108399130A (zh) * 2018-02-28 2018-08-14 平安科技(深圳)有限公司 自动生成测试案例的方法、装置、设备及可读存储介质
WO2019218444A1 (zh) * 2018-05-14 2019-11-21 平安科技(深圳)有限公司 测试报告的生成方法、装置、设备及存储介质
CN109634841A (zh) * 2018-10-26 2019-04-16 平安科技(深圳)有限公司 电子装置、接口自动化测试方法及存储介质
CN109376091A (zh) * 2018-10-31 2019-02-22 中国银行股份有限公司 一种接口测试数据的生成方法及装置
CN109474488A (zh) * 2018-10-31 2019-03-15 中国银行股份有限公司 接口测试方法、装置及计算机设备
CN110109817A (zh) * 2019-03-13 2019-08-09 深圳壹账通智能科技有限公司 接口自动化测试方法、装置、设备及存储介质
CN110096434A (zh) * 2019-03-28 2019-08-06 咪咕文化科技有限公司 一种接口测试方法及装置
CN110297760A (zh) * 2019-05-22 2019-10-01 平安普惠企业管理有限公司 测试数据的构造方法、装置、设备及计算机可读存储介质
CN110245083A (zh) * 2019-06-11 2019-09-17 四川长虹电器股份有限公司 一种基于python的接口自动化测试方法
CN110309071A (zh) * 2019-06-27 2019-10-08 杭州数梦工场科技有限公司 测试代码的生成方法及模块、测试方法及系统
CN110502425A (zh) * 2019-06-28 2019-11-26 平安银行股份有限公司 测试数据生成方法、装置、电子设备及存储介质
CN110471842A (zh) * 2019-07-12 2019-11-19 平安普惠企业管理有限公司 一种测试方法、装置及计算机可读存储介质
CN110427331A (zh) * 2019-09-03 2019-11-08 四川长虹电器股份有限公司 基于接口测试工具自动生成性能测试脚本的方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111930617A (zh) * 2020-07-31 2020-11-13 中国工商银行股份有限公司 基于数据对象化的自动化测试方法及装置
CN111930617B (zh) * 2020-07-31 2023-08-25 中国工商银行股份有限公司 基于数据对象化的自动化测试方法及装置
CN112363907A (zh) * 2020-09-14 2021-02-12 杭州大搜车汽车服务有限公司 Dubbo接口的测试方法、装置、电子装置和存储介质
CN112131127A (zh) * 2020-09-28 2020-12-25 北京同邦卓益科技有限公司 接口测试方法、装置、系统及电子设备
CN112131127B (zh) * 2020-09-28 2024-04-16 北京同邦卓益科技有限公司 接口测试方法、装置、系统及电子设备
CN113094263A (zh) * 2021-03-30 2021-07-09 四川新网银行股份有限公司 一种基于模板化生成自动化接口测试的方法
CN112988601A (zh) * 2021-04-29 2021-06-18 中国工商银行股份有限公司 测试脚本开发方法及装置
CN112988601B (zh) * 2021-04-29 2024-03-05 中国工商银行股份有限公司 测试脚本开发方法及装置
CN113420194A (zh) * 2021-05-07 2021-09-21 上海汇付数据服务有限公司 展示数据的方法和系统

Also Published As

Publication number Publication date
CN110955600B (zh) 2023-11-10

Similar Documents

Publication Publication Date Title
CN110955600B (zh) 接口测试方法及装置
CN109302522B (zh) 测试方法、装置以及计算机系统和介质
US10108535B2 (en) Web application test script generation to test software functionality
US10872005B1 (en) Fixed length message generation tool
US8490050B2 (en) Automatic generation of user interfaces
US8984489B2 (en) Quality on submit process
US7992127B2 (en) Method and system of encapsulating web site transactions for computer-aided generation of web services
US20150347281A1 (en) Automation testing using descriptive maps
EP2990942A1 (en) Service extraction and application composition
CN111444111A (zh) 基于python的性能测试方法、装置、计算机设备及存储介质
CN108763086A (zh) 基于远程真机的脚本录制方法、终端及计算机可读存储介质
CN111930617B (zh) 基于数据对象化的自动化测试方法及装置
US11074162B2 (en) System and a method for automated script generation for application testing
CN103246606B (zh) Esb平台的性能测试方法和系统
CN113791765B (zh) 云服务的资源编排方法、装置、设备及存储介质
US20120078809A1 (en) Integrating sub-processes in business process modeling notation processes
CN108984202B (zh) 一种电子资源分享方法、装置和存储介质
CN107807841B (zh) 服务器模拟方法、装置、设备及可读存储介质
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
CN113961332A (zh) 一种工作流引擎实现的方法、装置、电子设备及存储介质
CN111767229A (zh) 性能测试方法、装置和设备
US9736222B1 (en) System, method, and computer program for automatically exposing application programming interfaces (APIS) associated with an application server to one or more client devices
CN107368407B (zh) 信息处理方法和装置
US20160292067A1 (en) System and method for keyword based testing of custom components
CN111506305B (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
GR01 Patent grant
GR01 Patent grant