CN115016995A - 接口测试方法、计算机设备及计算机存储介质 - Google Patents

接口测试方法、计算机设备及计算机存储介质 Download PDF

Info

Publication number
CN115016995A
CN115016995A CN202210720098.2A CN202210720098A CN115016995A CN 115016995 A CN115016995 A CN 115016995A CN 202210720098 A CN202210720098 A CN 202210720098A CN 115016995 A CN115016995 A CN 115016995A
Authority
CN
China
Prior art keywords
interface
test
target
data
test data
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
CN202210720098.2A
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 Yunzhijia Network Co ltd
Original Assignee
Shenzhen Yunzhijia Network 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 Yunzhijia Network Co ltd filed Critical Shenzhen Yunzhijia Network Co ltd
Priority to CN202210720098.2A priority Critical patent/CN115016995A/zh
Publication of CN115016995A publication Critical patent/CN115016995A/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/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2268Logging of test results

Landscapes

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

Abstract

本申请实施例公开了一种接口测试方法、计算机设备及计算机存储介质。计算机设备根据测试代码中的目标序列所表示的数据读取位置从测试数据文档中读取目标接口的测试数据,根据读取到的测试数据执行对目标接口的接口测试操作,得到目标接口的接口测试结果,因此,无论接口数量多少,在任意接口测试时只需根据测试代码的指示读取测试数据,并根据读取到的测试数据执行接口测试操作,使得测试代码可重复使用在各个接口的测试操作中,只需读取待测接口的测试数据便可进行测试,无需人员重复地针对各个接口去设计对应的测试代码,同时,当接口发生改动时也只需要更改测试数据,无需再对测试代码进行更改,极大地方便了测试代码的维护工作。

Description

接口测试方法、计算机设备及计算机存储介质
技术领域
本申请实施例涉及计算机领域,具体涉及一种接口测试方法、计算机设备及计算机存储介质。
背景技术
服务端在给客户端提供业务功能服务时,会提供接口以便于客户端调用此接口并使用此接口对应的业务功能服务,其中该接口的种类繁多,例如账号登录接口、权限认证接口、信息存储接口等等。客户端可发起接口请求以请求调用服务端提供的接口,例如发起接口请求,接口请求携带用户名、密码等账号登录信息,服务端接收此接口请求后允许客户端用户基于该账号登录信息登录客户端。
接口的测试代码包括request方法以及测试数据,其中测试数据包括url、header、cookie、data等字段对应的数据。而接口的每个接口请求都需要对应地编写多条测试代码,当测试数据需要改动时,由于测试数据是被编写在测试代码中的,这就需要人员去对每条测试代码进行更改,显然这种做法会带来测试代码巨大的维护工作量,不便于测试代码的维护,在有多个接口需要测试时显然也给接口测试工作带来不便,接口测试效率不高。
发明内容
本申请实施例提供了一种接口测试方法、计算机设备及计算机存储介质,以便于测试代码的维护工作以及减少人员进行接口测试的工作量。
本申请实施例第一方面提供了一种接口测试方法,所述方法包括:
获取测试代码,所述测试代码预先封装用于表示数据读取位置的目标序列;
获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果。
本申请实施例第二方面提供了一种计算机设备,所述计算机设备包括:
获取单元,用于获取测试代码,所述测试代码预先封装用于表示数据读取位置的目标序列;
所述获取单元还用于获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
测试单元,用于运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果。
本申请实施例第三方面提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现前述第一方面的方法。
本申请实施例第四方面提供了一种计算机存储介质,计算机存储介质中存储有指令,该指令在计算机上执行时,使得计算机执行前述第一方面的方法。
本申请实施例第五方面提供了一种计算机程序产品,所述计算机程序产品在计算机设备上运行时,使得所述计算机设备执行前述第一方面的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:
测试代码与目标接口的测试数据分离,可分别获取,在需要对目标接口测试时运行测试代码,并根据测试代码中的目标序列所表示的数据读取位置从测试数据文档中读取目标接口的测试数据,根据读取到的测试数据执行对目标接口的接口测试操作,得到目标接口的接口测试结果,因此,无论接口数量多少,在任意接口测试时只需根据测试代码的指示读取测试数据,并根据读取到的测试数据执行接口测试操作,使得测试代码可重复使用在各个接口的测试操作中,只需读取待测接口的测试数据便可进行测试,无需人员重复地针对各个接口去设计对应的测试代码,可提升接口测试效率。同时,当接口发生改动时也只需要更改测试数据,无需再对测试代码进行更改,极大地方便了测试代码的维护工作。
附图说明
图1为本申请实施例中网络框架示意图;
图2为本申请实施例中接口测试方法一个流程示意图;
图3为本申请实施例中接口测试方法另一流程示意图;
图4为本申请实施例中Excel表格记录两种登录接口的接口请求信息与接口参数一种效果示意图;
图5为本申请实施例中计算机设备一个结构示意图;
图6为本申请实施例中计算机设备另一结构示意图。
具体实施方式
本申请实施例提供了一种接口测试方法、计算机设备及计算机存储介质,以便于测试代码的维护工作以及减少人员进行接口测试的工作量。
请参阅图1,本申请实施例中网络框架包括:
业务服务器100以及终端集群;终端集群可以包括:终端设备200a、终端设备200b、终端设备200c、……、终端设备200n等终端设备。
其中,上述业务服务器100可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云数据库、云服务、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端设备(包括终端设备200a、终端设备200b、终端设备200c、……、终端设备200n)可以是智能手机、平板电脑、笔记本电脑、台式计算机、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)、智能电脑、智能车载等智能终端。
其中,业务服务器100与终端集群中的各终端设备可以建立通信连接,终端集群中的各终端设备之间也可建立通信连接。换句话说,业务服务器100可与终端设备200a、终端设备200b、终端设备200c、……、终端设备200n中的各终端设备建立通信连接,例如终端设备200a与业务服务器100之间可建立通信连接。终端设备200a与终端设备200b之间可建立通信连接,终端设备200a与终端设备200c之间也可建立通信连接。其中,上述通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接等,具体可根据实际应用场景确定,本申请在此不做限制。
应该理解,如图1所示的终端集群中的每个终端设备均可以安装有应用客户端,当该应用客户端运行于各终端设备中时,可分别与业务服务器100之间进行数据交互,使得业务服务器100可以接收来自于每个终端设备的业务数据(比如用户通过终端设备上传的财务管理数据)。其中,该应用客户端可以为财务管理应用、企业事务管理应用、社交应用、即时通信应用、直播应用、游戏应用、短视频应用、视频应用、音乐应用、购物应用、小说应用、支付应用等具有显示文字、图像、音频以及视频等数据信息功能的应用客户端,具体可根据实际应用场景需求确定,在此不做限制。其中,该应用客户端可以为独立的客户端,也可以为集成在某客户端(例如财务管理客户端、企业事务管理客户端等)中的嵌入式子客户端,具体可根据实际应用场景确定,在此不做限定。
业务服务器100可作为服务端向图1所示的各终端设备的应用客户端提供一项或多项业务功能。服务端在给客户端提供业务功能服务时,会提供接口以便于客户端调用此接口并使用此接口对应的业务功能服务,其中该接口的种类繁多,例如账号登录接口、权限认证接口、信息存储接口等等。客户端可发起接口请求以请求调用服务端提供的接口,例如发起接口请求,接口请求携带用户名、密码等账号登录信息,服务端接收此接口请求后允许客户端用户基于该账号登录信息登录客户端。
接口完成设计之后需要根据接口的测试代码对接口进行测试,然而,在相关技术方案中,接口的测试代码既包括了用于测试接口的request方法,也包括了接口的URL、header、cookie、data等与接口信息有关的测试数据,不同接口的测试数据不同,且每个接口需要编写多条测试代码,这就导致人员需要针对每个接口编写多条测试代码。例如,存在接口1和接口2,人员需要对这两个接口分别编写多条测试代码,如针对接口1的测试代码:Resp1=s.request(url=…,cookies=…,method=…,data=…),针对接口2的测试代码:Resp2=s.request(url=…,cookies=…,method=…,data=…)。
可见,相关技术方案中测试数据与测试代码是相互结合的,需要根据不同接口的不同测试数据编写测试代码,增加了代码编写的工作量,同时,当测试数据需要更改时也要对测试代码进行更改,这也增加了测试代码维护的工作量,不便于测试代码的维护。
为解决上述技术问题,特提出本申请实施例的一种接口测试方法。下面将结合图1的网络框架,对本申请实施例中的接口测试方法进行描述:
请参阅图2,本申请实施例中接口测试方法一个实施例包括:
201、获取测试代码,所述测试代码预先封装用于表示数据读取位置的目标序列;
202、获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
本实施例的方法可应用于计算机设备,该计算机设备可以是如图1所示网络框架中的业务服务器100或者各终端设备。在接口被设计出来之后,需要进一步对接口进行测试以检查接口的运行是否符合预期要求。当目标接口需要进行接口测试时,计算机设备获取测试代码以及测试数据文档,该测试数据文档记录了目标接口的测试数据,该测试数据包括与目标接口运行有关的数据,可作为目标接口测试的依据。测试代码记录了任意接口的测试操作流程,因此部署了测试代码的计算机设备可根据该测试代码对任意接口进行接口测试。
其中,测试代码所封装的目标序列可以指示计算机设备读取测试数据文档中特定位置所记载的测试数据。因此,计算机设备可根据目标序列的指示从测试数据文档中读取对应的测试数据。
203、运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果;
计算机设备运行测试代码以执行测试代码所表示的一系列步骤。在运行至测试代码中的目标序列时,由于目标序列指示从测试数据文档中读取测试数据,因此可根据目标序列表示的数据读取位置从测试数据文档中读取测试数据,并在测试代码的指示下根据读取到的测试数据执行对目标接口的接口测试操作步骤,在完成测试操作步骤时获得目标接口的接口测试结果。
本实施例中,测试代码与目标接口的测试数据分离,可分别获取,在需要对目标接口测试时运行测试代码,并根据测试代码中的目标序列所表示的数据读取位置从测试数据文档中读取目标接口的测试数据,根据读取到的测试数据执行对目标接口的接口测试操作,得到目标接口的接口测试结果,因此,无论接口数量多少,在任意接口测试时只需根据测试代码的指示读取测试数据,并根据读取到的测试数据执行接口测试操作,使得测试代码可重复使用在各个接口的测试操作中,只需读取待测接口的测试数据便可进行测试,无需人员重复地针对各个接口去设计对应的测试代码,可提升接口测试效率。同时,当接口发生改动时也只需要更改测试数据,无需再对测试代码进行更改,极大地方便了测试代码的维护工作。
下面将在前述图2所示实施例的基础上,进一步详细地描述本申请实施例。请参阅图3,本申请实施例中接口测试方法另一实施例包括:
301、获取测试代码,所述测试代码预先封装用于表示数据读取位置的目标序列;
302、获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
本实施例中,测试代码可由人员编写并部署至计算机设备。目标接口的测试数据包括有关于目标接口运行的信息,获取目标接口的测试数据的方式可以是,计算机设备读取目标接口的接口请求信息与目标接口的接口参数,其中目标接口的接口请求信息包括接口访问的host地址、目标接口的URL地址、接口访问的方法method、目标接口的header信息等与接口请求相关的信息;目标接口的接口参数包括目标接口的参数信息、接口的body数据、接口body的数据类型、断言assert。
其中,接口访问的方法method可以是get方法、post方法或者put方法等等;接口访问的host地址可以是接口访问的ip地址或者域名;接口body的数据类型可以是data类型或者json类型等等,其中data一般是表单。
目标接口的接口请求信息与目标接口的接口参数可记录在任意格式的文本中,例如可记录于Excel表格中。因此,计算机设备可从Excel表格中读取目标接口的接口请求信息与目标接口的接口参数。
如图4所示,图4示出Excel表格记录两种登录接口的接口请求信息与接口参数的一种效果,Excel表格的每一列包括字段以及字段对应的值,例如“接口”字段的值包括“登录”,表示当前记录了两种登录接口,同时也记录了“host”字段及其值、“URL”字段及其值、“body_data”字段及其值,等等。因此,通过读取Excel表格,可获取目标接口的接口请求信息与目标接口的接口参数。
需要说明的是,图4所示的各字段及其值仅为示例性的字段和值,目标接口的接口请求信息与目标接口的接口参数所包括的字段和值还可以是其他字段和值,此处不作限定。
本实施例的方法可部署在python语言环境中,因此,从Excel表格中读取目标接口的接口请求信息与目标接口的接口参数的方式可以是,调用python语言环境的xlrd库从Excel表格中读取目标接口的接口请求信息与目标接口的接口参数。python语言环境下操作Excel主要用到xlrd库和xlwt库这两个库,即xlrd库是读Excel的库,xlwt库是写Excel的库,因此可以使用xlrd库来读取Excel表格中的数据。
因此,通过Excel表格记录接口的测试数据,接口请求和接口参数都记录在Excel表格里,做到了测试代码与测试数据分离,降低了测试人员编写测试代码的门槛,方便不懂代码的人通过在Excel表格填写测试数据后构建自动化接口测试,提升方案的普适性。
303、运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果;
本实施例中,可以通过测试代码中的request方法对接口进行测试,则根据读取到的测试数据执行对目标接口的接口测试操作,一种实施方式可以是,根据读取到的测试数据封装request方法,并调用该request方法以执行对目标接口的接口测试操作。
此外,根据读取到的测试数据执行对目标接口的接口测试操作,其另一实施方式还可以是,读取测试数据文档中与目标序列所表示的数据读取位置对应的值,将读取到的值赋值给测试代码中对应的测试数据字段,根据已赋值的测试数据字段执行对目标接口的接口测试操作。
例如,由于目标接口的测试数据可记录在Excel表格中,因此,可从Excel表格读取目标接口的测试数据,并将从Excel表格读取的header字段的值赋值给测试代码中的headers字段,将从Excel表格读取的params字段的值赋值给测试代码中的params字段,将从Excel表格读取的body_data字段的值赋值给测试代码中的body_data字段,将从Excel表格读取的data_tpye字段的值赋值给测试代码中的data_tpye字段,在完成上述字段的赋值之后,根据读取到的headers字段的值、params字段的值、body_data字段的值以及接口访问的方法method、目标接口的URL地址封装request方法,并调用该request方法以执行对目标接口的接口测试操作。
因此,通过对request方法的封装和对测试代码的封装,可以让测试代码更容易维护,并且便于测试代码复用,封装好request方法后,对基于http请求的接口都可以做到自动化接口测试,可重复无限次执行多种接口的接口测试,大大地提高了接口测试工作效率。
304、返回目标接口的接口测试结果;
本实施例中,在得到目标接口的接口测试结果之后,计算机设备可向用户返回目标接口的接口测试结果,以便于用户根据该结果确认目标接口的运行是否符合人员预期以及确认目标接口是否测试通过。返回目标接口的接口测试结果的方式可以是,将目标接口的接口测试结果反写至测试数据文档中的测试结果位置。
例如,如图4所示,Excel表格中有“testresult”这一字段对应的列,因此可将各接口的接口测试接口反写至“testresult”这一字段对应的单元格,则人员可通过查看此字段对应的单元格的内容来确认接口的测试结果。
目标接口的接口测试结果可以是直接表示接口测试通过或者接口测试不通过的信息,也可以表示接口运行结果的信息。当接口测试结果为表示接口运行结果的信息时,计算机设备可判断目标接口的接口测试结果是否等于断言assert的值,若是,则将表示目标接口测试通过的信息反写至Excel表格中测试结果字段对应的单元格;若否,则将表示目标接口测试未通过的信息反写至Excel表格中测试结果字段对应的单元格。
其中,表示目标接口测试通过的信息或者表示目标接口测试未通过的信息,可以是任意语种的文字信息或者语音信息、图像信息等任意类型的信息,只要能表示目标接口测试通过或者测试未通过即可。
本实施例读取Excel表格中目标接口的测试数据以及封装request方法等操作流程对应的伪代码可如下所示:
1、读取Excel文件,获取sheet页和行数
读取Excel表格中sheet页方法(参数1文件名,参数2sheet名字)
打开Excel文件
定位到Excel中的sheet页
获取sheet页中的行数
返回sheet页的行数和表格中的值
2、封装request请求方法
发送http请求接口方法:
获取当前请求的session
获取当前文件的一级目录
获取存放测试数据的Excel表格文件的绝对路径
循环读取Excel表格中的测试数据,依次从第1行到最后一行
host等于第1行第2列的数据
url等于第1行第3列的数据
method等于第1行第3列的数据
headers等于第1行第4列的数据
params等于第1行第5列的数据
data_tpye等于第1行第6列的数据
body_data等于第1行第7列的数据
assert等于第1行第8列的数据
testresult等于第1行第9列的数据
ifheaders,params,body_data,data_tpye为空,
把headers,params,body_data,data_tpye赋值为None
Else
把从Excel表格获取的值赋值给headers,params,body_data,data_tpye封装request方法(method,url,headers,params,data)
Ifrequest方法返回值等于断言的值:
测试通过,并把测试结果(pass)反写到Excel表中的测试结果字段Else
测试不通过,并把测试结果(fail)反写到Excel表中的测试结果字段完成自动化接口测试
从以上所列伪代码可以看出,计算机设备运行测试代码以执行测试代码所指示的步骤,并在运行至测试代码中的目标序列(即上述伪代码中“循环读取Excel表格中的测试数据”至“test result等于第1行第9列的数据”)时,读取Excel表格中此目标序列指示的行和列所记载的测试数据,如读取Excel表格中第1行第2列的数据、第1行第3列的数据,等等。之后,可根据读取到的测试数据以及测试代码所指示的测试操作步骤执行对目标接口的测试操作,测试完毕即获得目标接口的接口测试结果。
因此,通过本实施例基于数据驱动思维的接口测试方法,在封装request方法后,所有的http接口请求调用都可以写在Excel表格中,再也不用在集成开发环境(IDE,Integrated Development Environment)里逐个接口地去编写测试代码了,可以快速编写多个接口的自动化测试用例,并且测试代码可进一步封装为测试脚本,从而可大大提高自动化测试脚本的编写效率,并且该测试脚本和测试方法可快速复制到其他语言环境,测试脚本的复用度高。
上面对本申请实施例中的接口测试方法进行了描述,下面对本申请实施例中的计算机设备进行描述,请参阅图5,本申请实施例中计算机设备一个实施例包括:
获取单元501,用于获取测试代码,测试代码预先封装用于表示数据读取位置的目标序列;
获取单元501还用于获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
测试单元502,用于运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果。
本实施例一种优选的实施方式中,测试数据包括目标接口的接口请求信息与目标接口的接口参数。
本实施例一种优选的实施方式中,目标接口的接口请求信息包括接口访问的host地址、目标接口的URL地址、接口访问的方法method、目标接口的header信息;
目标接口的接口参数包括目标接口的参数信息、接口的body数据、接口body的数据类型、断言assert。
本实施例一种优选的实施方式中,测试单元502具体用于根据读取到的测试数据封装request方法;调用所述request方法以执行对所述目标接口的接口测试操作。
本实施例一种优选的实施方式中,测试单元502具体用于读取所述测试数据文档中与所述数据读取位置对应的值;将读取到的值赋值给所述测试代码中对应的测试数据字段;根据已赋值的测试数据字段执行对所述目标接口的接口测试操作。
本实施例一种优选的实施方式中,计算机设备还包括:
结果返回单元503,用于在得到所述目标接口的接口测试结果之后,将所述目标接口的接口测试结果反写至所述测试数据文档中的测试结果位置。
本实施例一种优选的实施方式中,所述测试数据包括断言assert;测试单元502具体用于根据读取到的测试数据调用所述目标接口,得到所述目标接口的接口运行结果;判断所述目标接口的接口运行结果是否等于断言assert的值;若是,则确定所述目标接口的接口测试结果为通过;若否,则确定所述目标接口的接口测试结果为未通过。
本实施例中,计算机设备中各单元所执行的操作与前述图2至图3所示实施例中描述的类似,此处不再赘述。
本实施例中,测试代码与目标接口的测试数据分离,可分别获取,在需要对目标接口测试时运行测试代码,并根据测试代码中的目标序列所表示的数据读取位置从测试数据文档中读取目标接口的测试数据,根据读取到的测试数据执行对目标接口的接口测试操作,得到目标接口的接口测试结果,因此,无论接口数量多少,在任意接口测试时只需根据测试代码的指示读取测试数据,并根据读取到的测试数据执行接口测试操作,使得测试代码可重复使用在各个接口的测试操作中,只需读取待测接口的测试数据便可进行测试,无需人员重复地针对各个接口去设计对应的测试代码,可提升接口测试效率。同时,当接口发生改动时也只需要更改测试数据,无需再对测试代码进行更改,极大地方便了测试代码的维护工作。
下面对本申请实施例中的计算机设备进行描述,请参阅图6,本申请实施例中计算机设备一个实施例包括:
该计算机设备600可以包括一个或一个以上中央处理器(central processingunits,CPU)601和存储器605,该存储器605中存储有一个或一个以上的应用程序或数据。
其中,存储器605可以是易失性存储或持久存储。存储在存储器605的程序可以包括一个或一个以上模块,每个模块可以包括对计算机设备中的一系列指令操作。更进一步地,中央处理器601可以设置为与存储器605通信,在计算机设备600上执行存储器605中的一系列指令操作。
计算机设备600还可以包括一个或一个以上电源602,一个或一个以上有线或无线网络接口603,一个或一个以上输入输出接口604,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该中央处理器601可以执行前述图2至图3所示实施例中计算机设备所执行的操作,具体此处不再赘述。
本申请实施例还提供了一种计算机存储介质,其中一个实施例包括:该计算机存储介质中存储有指令,该指令在计算机上执行时,使得该计算机执行前述图2至图3所示实施例中计算机设备所执行的操作。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。

Claims (10)

1.一种接口测试方法,其特征在于,所述方法包括:
获取测试代码,所述测试代码预先封装用于表示数据读取位置的目标序列;
获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果。
2.根据权利要求1所述的方法,其特征在于,所述测试数据包括所述目标接口的接口请求信息与所述目标接口的接口参数。
3.根据权利要求2所述的方法,其特征在于,所述目标接口的接口请求信息包括接口访问的host地址、所述目标接口的URL地址、接口访问的方法method、所述目标接口的header信息;
所述目标接口的接口参数包括所述目标接口的参数信息、接口的body数据、接口body的数据类型、断言assert。
4.根据权利要求1所述的方法,其特征在于,所述根据读取到的测试数据执行对所述目标接口的接口测试操作,包括:
根据读取到的测试数据封装request方法;
调用所述request方法以执行对所述目标接口的接口测试操作。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,包括:
读取所述测试数据文档中与所述数据读取位置对应的值;
将读取到的值赋值给所述测试代码中对应的测试数据字段;
根据已赋值的测试数据字段执行对所述目标接口的接口测试操作。
6.根据权利要求1所述的方法,其特征在于,所述根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果之后,还包括:
将所述目标接口的接口测试结果反写至所述测试数据文档中的测试结果位置。
7.根据权利要求1所述的方法,其特征在于,所述测试数据包括断言assert;所述根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果,包括:
根据读取到的测试数据调用所述目标接口,得到所述目标接口的接口运行结果;
判断所述目标接口的接口运行结果是否等于断言assert的值;
若是,则确定所述目标接口的接口测试结果为通过;
若否,则确定所述目标接口的接口测试结果为未通过。
8.一种计算机设备,其特征在于,所述计算机设备包括:
获取单元,用于获取测试代码,所述测试代码预先封装用于表示数据读取位置的目标序列;
所述获取单元还用于获取测试数据文档;所述测试数据文档包括用于测试目标接口的测试数据;
测试单元,用于运行所述测试代码,在运行至所述目标序列时,根据所述目标序列表示的数据读取位置从所述测试数据文档中读取测试数据,并根据读取到的测试数据执行对所述目标接口的接口测试操作,得到所述目标接口的接口测试结果。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如权利要求1至7中任一项所述的方法。
CN202210720098.2A 2022-06-23 2022-06-23 接口测试方法、计算机设备及计算机存储介质 Pending CN115016995A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210720098.2A CN115016995A (zh) 2022-06-23 2022-06-23 接口测试方法、计算机设备及计算机存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210720098.2A CN115016995A (zh) 2022-06-23 2022-06-23 接口测试方法、计算机设备及计算机存储介质

Publications (1)

Publication Number Publication Date
CN115016995A true CN115016995A (zh) 2022-09-06

Family

ID=83076088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210720098.2A Pending CN115016995A (zh) 2022-06-23 2022-06-23 接口测试方法、计算机设备及计算机存储介质

Country Status (1)

Country Link
CN (1) CN115016995A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809201A (zh) * 2022-12-23 2023-03-17 广州市保伦电子有限公司 一种基于二维表的接口测试控制方法、装置、设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115809201A (zh) * 2022-12-23 2023-03-17 广州市保伦电子有限公司 一种基于二维表的接口测试控制方法、装置、设备及介质
CN115809201B (zh) * 2022-12-23 2023-10-20 广东保伦电子股份有限公司 一种基于二维表的接口测试控制方法、装置、设备及介质

Similar Documents

Publication Publication Date Title
CN111625452B (zh) 流量回放方法和系统
US9645910B1 (en) Cross platform mobile HTML debugging
US9652364B1 (en) Cloud service for mobile testing and debugging
CN113190464B (zh) mock测试方法、装置、电子设备及介质
CN108255701B (zh) 场景测试方法及移动终端
CN104410546A (zh) 实时处理系统的测试方法和装置
CN111045942A (zh) 应用测试方法、系统、存储介质及电子设备
CN113760674A (zh) 信息生成方法、装置、电子设备和计算机可读介质
CN109828920A (zh) 一种日志分析方法、装置及计算机可读存储介质
CN111625464A (zh) 接口的测试方法、装置、存储介质和处理器
CN117278434A (zh) 流量回放方法、装置、电子设备
CN111352851A (zh) 一种程序测试方法、装置、计算机设备及存储介质
CN113076251A (zh) 测试方法和装置
CN105554136B (zh) 备份数据还原方法、装置及系统
CN112699034A (zh) 虚拟登录用户构建方法、装置、设备及存储介质
CN115016995A (zh) 接口测试方法、计算机设备及计算机存储介质
CN108809896A (zh) 一种信息校验方法、装置和电子设备
CN115705190A (zh) 依赖程度的确定方法及装置
CN113763008A (zh) 一种应用推广跟踪方法、装置、服务器、设备和介质
CN111159033A (zh) 一种软件测试方法及装置
CN112256564B (zh) 应用程序的运行方法、装置及电子设备
CN105988917B (zh) 异常信息获取方法及装置
CN114567571A (zh) 性能测试方法、装置、电子设备和计算机可读存储介质
CN109600403B (zh) 一种发送信息的方法及装置
CN113760707A (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