CN112597052A - 接口测试方法、装置及计算机可读存储介质 - Google Patents

接口测试方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN112597052A
CN112597052A CN202011610372.8A CN202011610372A CN112597052A CN 112597052 A CN112597052 A CN 112597052A CN 202011610372 A CN202011610372 A CN 202011610372A CN 112597052 A CN112597052 A CN 112597052A
Authority
CN
China
Prior art keywords
test
interface
case
data
user
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
CN202011610372.8A
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 TCL New Technology Co Ltd
Original Assignee
Shenzhen TCL New 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 Shenzhen TCL New Technology Co Ltd filed Critical Shenzhen TCL New Technology Co Ltd
Priority to CN202011610372.8A priority Critical patent/CN112597052A/zh
Publication of CN112597052A publication Critical patent/CN112597052A/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/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/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

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

接口测试方法、装置及计算机可读存储介质
技术领域
本发明涉及接口测试领域,尤其涉及一种接口测试方法、装置及计算机可读存储介质。
背景技术
目前,主流的接口测试过程通常包括:(1)开发人员提出接口测试需求;(2)测试人员根据接口测试文档,分析接口功能及参数及其参数范围;(3)根据经验自拟数据,或者向相关方询问数据来源,或通过抓包和抓取日志,以获取必须数据;(4)编写测试用例;(5)执行测试用例,生成测试报告。随着应用业务的不断扩张,接口测试的需求也越来越高。
为了满足日益扩张的接口测试需求,现有的解决方案通常是增加测试人员。然而,测试人员需要要求具备较强的接口功能分析能力,能够根据接口参数构建出合适的测试用例。在测试人员增加时,新增的测试人员由于经验不足,针对测试接口所构建的测试用例存在不恰当、数量少、类型单一、覆盖面较小以及构建效率低等问题。同时,测试人员和测试用时的增加还会产生大量的测试成本。并且,在应用开发过程中,若接口测试的用例集无法满足质检的需求,还会影响应用的开发进度。
发明内容
本发明的主要目的在于提供一种接口测试方法、装置及计算机可读存储介质,旨在解决现有的接口测试方案无法满足测试需求的问题。
为实现上述目的,本发明提供一种接口测试方法,包括以下步骤:
接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据;
将所述测试数据与所述接口参数进行匹配,生成自动化测试用例;
对所述自动化测试用例进行接口自动化测试并生成相应的测试报告。
可选地,所述接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤之前,还包括:
通过预设于应用中的埋点脚本收集应用日志;
通过正则匹配方式从应用日志中提取出测试数据,并将所述测试数据存储在数据库中。
可选地,所述根据所述接口参数从数据库中提取出测试数据的步骤包括:
根据预设的业务规则确定待提取的测试数据的字段属性,并通过正则匹配生成数据提取脚本;
根据所述数据提取脚本从数据库中提取出相应的测试数据的字段值。
可选地,所述将所述测试数据与所述接口参数进行匹配,生成自动化测试用例的步骤包括:
根据所述接口参数从用例模板库中确定接口用例模板,并根据数据库中提取出的测试数据生成用例表格;
将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集,并将所述测试用例集作为自动化测试用例。
可选地,所述将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集的步骤包括:
根据所述接口用例模板中的接口关键字确定所述接口用例模板中的键对应的数据字段;
从所述用例表格中获取每个测试数据中与所述数据字段对应的值;
将所述接口用例模板中的键与每个测试数据中与所述数据字段对应的值分别进行匹配,以生成包含有多个测试用例的测试用例集。
可选地,所述对所述自动化测试用例进行接口自动化测试并生成相应的测试报告的步骤包括:
在自动化测试框架下执行所述自动化测试用例,得到测试结果;
根据所述自动化测试用例中各个测试用例的检查点和期望结果对测试结果进行分析,并生成相应的测试报告。
可选地,所述接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤之前,还包括:
根据用户输入的定时指令确定定时更新周期;
每间隔所述定时更新周期,重新执行所述根据所述接口参数从数据库中提取出测试数据的步骤。
可选地,所述对所述自动化测试用例进行接口自动化测试并生成相应的测试报告的步骤之后,还包括:
将所述测试报告中的失败用例进行突出显示,以使用户根据失败用例对接口进行调试。
此外,为实现上述目的,本发明还提供一种接口测试装置,所述接口测试装置包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口测试程序,其中:所述接口测试程序被所述处理器执行时实现如上所述的接口测试方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有接口测试程序,所述接口测试程序被处理器执行时实现如上所述的接口测试方法的步骤。
本发明实施例提出的一种接口测试方法、装置及计算机可读存储介质,用户通过接口测试文档确定待测试接口的接口参数后,可以输入接口参数。根据接口参数可以从存储有用户日志的数据库中提取出此次接口测试过程所需的用户数据。将用户数据与接口参数进行匹配后可以生成测试接口所需的各种测试用例。通过自动执行测试用例能够得到该接口的测试结果,并生成相应的测试报告以供相关人员进行处理。测试人员在测试过程中,仅需要提供测试接口的相关测试参数,即可从数据库中获取到大量测试数据,并生成覆盖各种情况的测试用例,对接口进行全方面的自动化测试,避免测试用例构建不当而导致无法覆盖到各种测试情况,提升测试效果。并且,用户不需要手动编写测试用例,还能够节省大量测试时间,提升测试效率。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图;
图2为本发明接口测试方法第一实施例的流程示意图;
图3为本发明接口测试方法第二实施例的流程示意图;
图4为本发明接口测试方法第三实施例的流程示意图;
图5为本发明接口测试方法第四实施例的流程示意图;
图6为本发明接口测试方法第五实施例中步骤S22的细化流程示意图;
图7为本发明接口测试方法第六实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的装置结构示意图。
本发明实施例终端可以是PC,也可以是服务器、智能手机、平板电脑、便携计算机等能够运行测试工具的设备或平台。
如图1所示,该终端可以包括:处理器1001,例如CPU,通信总线1002,用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选的用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
可选地,终端还可以包括摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。其中,传感器比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示屏的亮度,接近传感器可在硬件设备移动到耳边时,关闭显示屏和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别硬件设备姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;当然,硬件设备还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
本领域技术人员可以理解,图1中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及接口测试程序。
在图1所示的终端中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的接口测试程序,并执行以下操作:
接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据;
将所述测试数据与所述接口参数进行匹配,生成自动化测试用例;
对所述自动化测试用例进行接口自动化测试并生成相应的测试报告。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
通过预设于应用中的埋点脚本收集应用日志;
通过正则匹配方式从应用日志中提取出测试数据,并将所述测试数据存储在数据库中。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
根据预设的业务规则确定待提取的测试数据的字段属性,并通过正则匹配生成数据提取脚本;
根据所述数据提取脚本从数据库中提取出相应的测试数据的字段值。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
根据所述接口参数从用例模板库中确定接口用例模板,并根据数据库中提取出的测试数据生成用例表格;
将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集,并将所述测试用例集作为自动化测试用例。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
根据所述接口用例模板中的接口关键字确定所述接口用例模板中的键对应的数据字段;
从所述用例表格中获取每个测试数据中与所述数据字段对应的值;
将所述接口用例模板中的键与每个测试数据中与所述数据字段对应的值分别进行匹配,以生成包含有多个测试用例的测试用例集。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
在自动化测试框架下执行所述自动化测试用例,得到测试结果;
根据所述自动化测试用例中各个测试用例的检查点和期望结果对测试结果进行分析,并生成相应的测试报告。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
根据用户输入的定时指令确定定时更新周期;
每间隔所述定时更新周期,重新执行所述根据所述接口参数从数据库中提取出测试数据的步骤。
进一步地,处理器1001可以调用存储器1005中存储的接口测试程序,还执行以下操作:
将所述测试报告中的失败用例进行突出显示,以使用户根据失败用例对接口进行调试。
本发明应用于终端的具体实施例与下述应用接口测试方法的各实施例基本相同,在此不作赘述。
请参照图2,图2为本发明接口测试方法第一实施例的流程示意图,其中,所述接口测试方法包括如下步骤:
步骤S10,接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据;
本实施例中,开发人员根据接口测试需求提供接口测试文档后,用户可以对接口测试文档进行分析,以确定该接口的接口地址、接口参数和接口功能。在接收到用户输入的接口参数后,可以根据该接口参数从数据库中提取出此次接口测试过程所需的测试数据。
可以理解的是,数据库中预先存储有用户在使用应用时所产生的用户日志,在对接口进行测试时所需的测试数据即包含在数据库中的用户日志中。通过预先设置的业务规则,能够根据接口参数从数据库的用户日志中提取出相应的测试数据。其中,接口测试时通常所需要调用到的数据包括接口发送请求时所需要的header字段参数、body字段参数以及接口响应参数等。
步骤S20,将所述测试数据与所述接口参数进行匹配,生成自动化测试用例;
在从数据库的用户日志中提取出接口测试所需的测试数据后,将测试数据与接口参数进行填充和匹配,即可生成各种不同的测试用例,并作为自动化测试用例进行自动化测试。
可以理解的是,由于测试数据是从用户在使用应用时采集的用户日志中提取,该测试数据与用户的日常使用场景较为重合,能够覆盖用户在日常使用到该接口时的各种情况。将测试数据与接口参数进行匹配后,即可得到该接口的各种测试用例。例如,对于修改昵称接口,从数据库中获取到的测试数据包括用户日常使用应用的昵称修改时的用户日志,其中可以包括调用接口、对应用户发送值、调用结果、接口返回信息(code、message和data)等。根据用户日志中调用该接口所产生的各个测试数据,能够分别与接口参数进行匹配以生成各种不同的测试用例,从而覆盖测试接口的各个场景。
步骤S30,对所述自动化测试用例进行接口自动化测试并生成相应的测试报告。
在生成自动化测试用例后,可以通过执行自动化测试用例以进行接口自动化测试。自动化测试用例中包括多个不同的测试用例,分别对每个测试用例进行测试后可以得到每个测试用例的测试结果,统计每个测试用例的测试结果可以生成相应的测试报告。在生成测试报告后,相应的测试人员根据测试报告的内容即可进行相应处理,对于测试失败的用例可以进行debug查错;对于测试成功的用例,则还需要进一步确认测试过程中测试数据的合法性。
在本实施例中,用户通过接口测试文档确定待测试接口的接口参数后,可以输入接口参数。根据接口参数可以从存储有用户日志的数据库中提取出此次接口测试过程所需的用户数据。将用户数据与接口参数进行匹配后可以生成测试接口所需的各种测试用例。通过自动执行测试用例能够得到该接口的测试结果,并生成相应的测试报告以供相关人员进行处理。测试人员在测试过程中,仅需要提供测试接口的相关测试参数,即可从数据库中获取到大量测试数据,并生成覆盖各种情况的测试用例,对接口进行全方面的自动化测试,避免测试用例构建不当而导致无法覆盖到各种测试情况,提升测试效果。并且,用户不需要手动编写测试用例,还能够节省大量测试时间,提升测试效率。
进一步的,参照图3,图3为本发明接口测试方法第二实施例的流程示意图,基于上述图2所示的实施例,所述步骤S10,接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤之前,还包括:
步骤S40,通过预设于应用中的埋点脚本收集应用日志;
步骤S41,通过正则匹配方式从应用日志中提取出测试数据,并将所述测试数据存储在数据库中。
在本实施例中,应用在开发阶段时,开发人员可以在应用中设置埋点脚本,以获取应用日志,该应用日志即为用户在使用应用时所产生的用户日志。例如,用户在登录时,应用中的埋点脚本能够收集用户发送的账号ID和密码,并记录通过账号ID和密码调用登录接口所生成的accessToken等数据。
在通过埋点脚本获取到用户数据后,可以通过正则表达式匹配规则从用户日志中匹配出所需的用户数据,并将该用户数据存储在数据库中。其中,正则表达式是对字符串操作的一种逻辑公式,通过事先定义好的一些特定字符以及这些特定字符的组合,组成一个规则字符串,并通过规则字符串用来对字符串进行过滤,以从字符串中取出符合用户设置的条件的子串。例如,若获取到的用户日志中关于URL(Uniform Resource Locator,统一资源定位器)信息的格式为“url”:“https://www.tcl.com/”,则可以通过正则表达式"url"\:"([^"]+)"提取出url字段中的value值,即https://www.tcl.com/。
在根据预设的正则匹配方式从应用日志中获取到具体的测试数据后,可以将该测试数据存储在线上数据库中。以便于在用户输入接口参数测试接口时从线上数据库中获取测试数据以生成测试用例。
可以理解的是,由于测试数据是由应用日志中得到,而应用日志为用户在日常使用应用时的日志数据。其能够包含用户在使用该接口时所遇到的绝大多数情形。根据该测试数据所构建的测试用例也将能够覆盖接口功能的大部分情况,从而起到比较好的测试效果。
进一步的,参照图4,图4为本发明接口测试方法第三实施例的流程示意图,基于上述图3所示的实施例,所述步骤S10,接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤包括:
步骤S11,接收用户输入的接口参数,根据预设的业务规则确定待提取的测试数据的字段属性,并通过正则匹配生成数据提取脚本;
步骤S12,根据所述数据提取脚本从数据库中提取出相应的测试数据的字段值。
在本实施例中,获取到用户输入的接口参数后,可以根据该接口参数和预设的业务规则确定待提取的测试数据所对应的字段属性。根据该字段属性生成正则表达式后,通过正则表达式构建数据提取脚本,并运行数据提取脚本对数据库中的测试数据进行正则匹配,以从数据库中识别出字段属性相匹配的测试数据,并提取出这些测试数据的字段值。可以理解的是,接口通常所需要调用的数据包括header字段参数、body字段参数、检查点以及期望结果。
进一步的,参照图5,图5为本发明接口测试方法第四实施例的流程示意图,基于上述图4所示的实施例,所述步骤S20,将所述测试数据与所述接口参数进行匹配,生成自动化测试用例的步骤包括:
步骤S21,根据所述接口参数从用例模板库中确定接口用例模板,并根据数据库中提取出的测试数据生成用例表格;
步骤S22,将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集,并将所述测试用例集作为自动化测试用例。
在本实施例中,用例模板库中预先设置有多个接口用例模板,分别对应不同的接口功能。例如显示图片模板、获取设备图标名称信息模板、查找账号信息模板、获取最近分享人列表等。在从用例模板库中确定进行测试接口对应的接口用例模板后,可以将数据库中提取出的测试数据生成为用例表格。其中,用户表格的第一行为各个数据字段的键值,其后每一行代表一个测试用例,每个测试数据中分别与每个数据字段对应的值即为测试数据。键值可以在接口用例模板中进行定义。例如,用户表格中的键值可以为$access_token,则接口用例模板中的键值定义为header:$access_token。
在将接口用例模板中的键与用例表格中的值进行填充匹配时,接口用例模板可以确定需要获取值的键,并从用户表格中将对应的值填充至接口用例模板中的键中。在将接口用例模板所有需要获取值的键通过用例表格中同一行的数据值进行填充后,即可生成一个测试用例。即,接口用例模板与用例表格中的每一行数据进行匹配结合后即可生成一个测试用例。通过一个接口用例模板与一个具有多行数据的用例表格进行匹配,即可得到大量测试用例。
通过接口用例模板与用例表格进行匹配填充后所得到的多个测试用例可以组成测试用例集,该测试用例集可以作为自动化测试用例。
进一步的,参照图6,图6为本发明接口测试方法第五实施例中步骤S22的细化流程示意图,基于上述图5所示的实施例,所述步骤S22,将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集,并将所述测试用例集作为自动化测试用例的步骤包括:
步骤S221,根据所述接口用例模板中的接口关键字确定所述接口用例模板中的键对应的数据字段;
步骤S222,从所述用例表格中获取每个测试数据中与所述数据字段对应的值;
步骤S223,将所述接口用例模板中的键与每个测试数据中与所述数据字段对应的值分别进行匹配,以生成包含有多个测试用例的测试用例集,并将所述测试用例集作为自动化测试用例。
在本实施例中,生成自动化测试用例需要通过接口用例模板、用例表格以及接口关键字。接口关键字的脚本为用户预先定义并封装,其是描述接口属性,实现访问接口功能的一系列代码。接口关键字的脚本包括定义接口的类型(post,get,delete),url,header,body等各种接口信息,设置接口返回值的检查点和期望接口等等。每个接口关键字都被封装成单独的方法,方便后续数据驱动时调用。接口用例模板中所使用的字段需要在接口关键字中进行定义。
接口用例模板为用户实现相应的接口功能而编写的模板,在接口用例模板中,可以开启数据驱动模块,给出数据的路径地址,并选择所使用的接口关键字。在确定接口关键字后,根据接口关键字中定义的参数,申明其在用例表格中对应的名称,以便于从用例表格中获取相应的值。可以理解的是,一个接口用例模板中可以调用一个接口关键字进行单接口的测试,也可以调用多个接口关键字进行业务流程的测试。
用例表格用于存储测试数据,其每一行代表一个测试用例,并且每一行的数据中通常包括参数一般会包括测试参数,检查点和期望结果。根据接口用例模板中对应的名称可以从用例表格中获取到相应的值。在将同一行中的各个参数、检查点以及期望结果填充到接口用例模板后,即可生成一个测试用例。其中,接口关键字还可以包括多个功能接口,例如访问接口可以确定接口url、header参数和body参数等。在对接口用例模板进行数据驱动时,用例表格中的接口数据也可以传入接口关键字的脚本中,并调用相应接口执行相应功能。
进一步的,参照图7,图7为本发明接口测试方法第六实施例的流程示意图,基于上述图2所示的实施例,所述步骤S30,对所述自动化测试用例进行接口自动化测试并生成相应的测试报告的步骤包括:
步骤S31,在自动化测试框架下执行所述自动化测试用例,得到测试结果;
步骤S32,根据所述自动化测试用例中各个测试用例的检查点和期望结果对测试结果进行分析,并生成相应的测试报告。
在本实施例中,通过设置自动化测试框架,能够通过执行自动化测试用例,得到相应的测试结果。在各个测试用例中还包括检查点和期望结果,根据检查点和期望结果对测试结果进行分析,即可确定该测试用例是否成功或失败。统计所有测试用户的测试结果并进行分析后,即可生成相应的测试报告。用户根据生成的测试报告即可确定接口测试用例的执行结果,并进行接口的检查和校验。
进一步的,在本发明接口测试方法第七实施例中,基于上述图7所示的实施例,所述步骤S10,接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤之前,还包括:
步骤S50,根据用户输入的定时指令确定定时更新周期;
每间隔所述定时更新周期,重新执行步骤S10,根据所述接口参数从数据库中提取出测试数据。
在本实施例中,可以预先设置持续集成CI工具,并将自动化测试框架部署在该CI工具上。其中,CI工具可以为Jenkins,Jenkins能够持续、自动地构建/测试软件项目,并监控外部任务的运行。在CI工具可以通过用户输入的定时指令设置一个定时更新的周期。在每间隔相应的周期时,可以定时指定测试用例的测试代码,以实现接口测试无人值守运行。减少接口测试用例维护的时间成本和人力成本。
可以理解的是,在后续进行接口维护时,接口测试用例能够根据线上数据库实时更新测试数据,并根据更新后的测试数据进行自动化测试。在每次执行完定时测试之后,都会生成相应的测试报告。测试人员可以对测试报告进行分析,对测试报告中失败的测试用例进行debug查错,对成功的测试用例则需要进一步确保其数据的合法性。
进一步的,在本发明接口测试方法第八实施例中,基于上述图2所示的实施例,所述步骤S30,对所述自动化测试用例进行接口自动化测试并生成相应的测试报告的步骤之后,还包括:
步骤S60,将所述测试报告中的失败用例进行突出显示,以使用户根据失败用例对接口进行调试。
在本实施例中,根据各个测试用例的测试结果生成相应的测试报告后,可以对测试报告中失败的测试用例进行突出显示,以使用户在阅读测试报告时注意到失败的测试用例,并据此对接口进行debug查错和调试处理。其中,测试报告对失败的测试用例进行突出显示的方式可以是在测试报告中对失败的测试用例进行标注、批注或添加底纹,以便于用户在多个测试用例中着重注意到该失败的测试用例;也可以是对失败的测试用例的内容部分进行字体颜色、大小的调整,以使失败的测试用例区别于其他成功的测试用例;还可以是将失败的测试用例在测试报告中进行置顶处理,以使用户在打开测试报告时即可直接查看失败的测试用例。
此外,本发明还提出一种计算机可读存储介质,其上存储有接口测试程序。所述计算机可读存储介质可以是图1的终端中的存储器20,也可以是如ROM(Read-Only Memory,只读存储器)/RAM(Random Access Memory,随机存取存储器)、磁碟、光盘中的至少一种,所述计算机可读存储介质包括若干指令用以使得一台具有处理器的接口测试装置执行本发明各个实施例所述的接口测试方法。
可以理解的是,在本说明书的描述中,参考术语“一实施例”、“另一实施例”、“其他实施例”、或“第一实施例~第N实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种接口测试方法,其特征在于,包括以下步骤:
接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据;
将所述测试数据与所述接口参数进行匹配,生成自动化测试用例;
对所述自动化测试用例进行接口自动化测试并生成相应的测试报告。
2.如权利要求1所述的接口测试方法,其特征在于,所述接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤之前,还包括:
通过预设于应用中的埋点脚本收集应用日志;
通过正则匹配方式从应用日志中提取出测试数据,并将所述测试数据存储在数据库中。
3.如权利要求2所述的接口测试方法,其特征在于,所述根据所述接口参数从数据库中提取出测试数据的步骤包括:
根据预设的业务规则确定待提取的测试数据的字段属性,并通过正则匹配生成数据提取脚本;
根据所述数据提取脚本从数据库中提取出相应的测试数据的字段值。
4.如权利要求3所述的接口测试方法,其特征在于,所述将所述测试数据与所述接口参数进行匹配,生成自动化测试用例的步骤包括:
根据所述接口参数从用例模板库中确定接口用例模板,并根据数据库中提取出的测试数据生成用例表格;
将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集,并将所述测试用例集作为自动化测试用例。
5.如权利要求4所述的接口测试方法,其特征在于,所述将所述接口用例模板中的键与所述用例表格中的值进行填充匹配,以生成测试用例集的步骤包括:
根据所述接口用例模板中的接口关键字确定所述接口用例模板中的键对应的数据字段;
从所述用例表格中获取每个测试数据中与所述数据字段对应的值;
将所述接口用例模板中的键与每个测试数据中与所述数据字段对应的值分别进行匹配,以生成包含有多个测试用例的测试用例集。
6.如权利要求1所述的接口测试方法,其特征在于,所述对所述自动化测试用例进行接口自动化测试并生成相应的测试报告的步骤包括:
在自动化测试框架下执行所述自动化测试用例,得到测试结果;
根据所述自动化测试用例中各个测试用例的检查点和期望结果对测试结果进行分析,并生成相应的测试报告。
7.如权利要求6所述的接口测试方法,其特征在于,所述接收用户输入的接口参数,并根据所述接口参数从数据库中提取出测试数据的步骤之前,还包括:
根据用户输入的定时指令确定定时更新周期;
每间隔所述定时更新周期,重新执行所述根据所述接口参数从数据库中提取出测试数据的步骤。
8.如权利要求1所述的接口测试方法,其特征在于,所述对所述自动化测试用例进行接口自动化测试并生成相应的测试报告的步骤之后,还包括:
将所述测试报告中的失败用例进行突出显示,以使用户根据失败用例对接口进行调试。
9.一种接口测试装置,其特征在于,所述接口测试装置包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的接口测试程序,其中:所述接口测试程序被所述处理器执行时实现如权利要求1至8中任一项所述的接口测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有接口测试程序,所述接口测试程序被处理器执行时实现如权利要求1至8中任一项所述的接口测试方法的步骤。
CN202011610372.8A 2020-12-29 2020-12-29 接口测试方法、装置及计算机可读存储介质 Pending CN112597052A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011610372.8A CN112597052A (zh) 2020-12-29 2020-12-29 接口测试方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011610372.8A CN112597052A (zh) 2020-12-29 2020-12-29 接口测试方法、装置及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN112597052A true CN112597052A (zh) 2021-04-02

Family

ID=75206245

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011610372.8A Pending CN112597052A (zh) 2020-12-29 2020-12-29 接口测试方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112597052A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113176993A (zh) * 2021-04-28 2021-07-27 平安银行股份有限公司 用例测试方法、装置、电子设备及存储介质
CN113312258A (zh) * 2021-05-25 2021-08-27 平安壹钱包电子商务有限公司 一种接口测试方法、装置、设备及存储介质
CN113407446A (zh) * 2021-06-04 2021-09-17 荣耀终端有限公司 一种测试用例的生成方法及电子设备
CN113535565A (zh) * 2021-07-19 2021-10-22 工银科技有限公司 一种接口用例生成方法、装置、设备、介质和程序产品
CN115525561A (zh) * 2022-10-11 2022-12-27 深圳市航盛电子股份有限公司 协议接口测试方法、装置、终端设备以及存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113176993A (zh) * 2021-04-28 2021-07-27 平安银行股份有限公司 用例测试方法、装置、电子设备及存储介质
CN113312258A (zh) * 2021-05-25 2021-08-27 平安壹钱包电子商务有限公司 一种接口测试方法、装置、设备及存储介质
CN113407446A (zh) * 2021-06-04 2021-09-17 荣耀终端有限公司 一种测试用例的生成方法及电子设备
CN113407446B (zh) * 2021-06-04 2022-05-03 荣耀终端有限公司 一种测试用例的生成方法及电子设备
CN113535565A (zh) * 2021-07-19 2021-10-22 工银科技有限公司 一种接口用例生成方法、装置、设备、介质和程序产品
CN113535565B (zh) * 2021-07-19 2022-10-04 工银科技有限公司 一种接口用例生成方法、装置、设备和介质
CN115525561A (zh) * 2022-10-11 2022-12-27 深圳市航盛电子股份有限公司 协议接口测试方法、装置、终端设备以及存储介质

Similar Documents

Publication Publication Date Title
CN112597052A (zh) 接口测试方法、装置及计算机可读存储介质
CN111475694B (zh) 一种数据处理方法、装置、终端及存储介质
CN110825619A (zh) 接口测试用例自动生成方法、装置及存储介质
CN111181805B (zh) 一种基于测试用例的微服务测试挡板生成方法及系统
CN110825618A (zh) 一种生成测试用例的方法及相关装置
CN113741898B (zh) 表单生成方法、装置及设备
CN110554962A (zh) 回归测试的流程覆盖方法、服务器及计算机可读存储介质
US20180024912A1 (en) Application Testing System and Method
CN109814868B (zh) 网络传输模拟方法、装置、计算机设备及存储介质
CN105117340B (zh) 用于iOS浏览器应用质量评估的URL检测方法和装置
CN111143213A (zh) 软件自动化测试方法和装置及电子设备
CN115033894A (zh) 一种基于知识图谱的软件组件供应链安全检测方法及装置
CN111694550A (zh) 一种页面显示控制方法、装置及系统
CN107908525B (zh) 告警处理方法、设备及可读存储介质
CN109634836A (zh) 测试数据封装方法、装置、设备及存储介质
CN113485882A (zh) 芯片验证方法、装置及计算机可读存储介质
CN117493188A (zh) 接口测试方法及装置、电子设备及存储介质
CN109740074B (zh) 参数配置信息的处理方法、装置及设备
CN116719736A (zh) 一种用于测试软件界面的测试用例生成方法及装置
CN111159028A (zh) 网页测试方法及装置
CN110727576A (zh) 一种web页面测试方法、装置、设备及存储介质
CN109144841B (zh) 广告应用的识别方法和装置、计算机设备和存储介质
CN114880239A (zh) 一种基于数据驱动的接口自动化测试框架及方法
CN111125605B (zh) 页面元素获取方法和装置
CN112671615A (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