CN107678961A - 一种接口测试方法及装置 - Google Patents

一种接口测试方法及装置 Download PDF

Info

Publication number
CN107678961A
CN107678961A CN201710880551.5A CN201710880551A CN107678961A CN 107678961 A CN107678961 A CN 107678961A CN 201710880551 A CN201710880551 A CN 201710880551A CN 107678961 A CN107678961 A CN 107678961A
Authority
CN
China
Prior art keywords
test
interface
rest api
task
module
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
CN201710880551.5A
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710880551.5A priority Critical patent/CN107678961A/zh
Publication of CN107678961A publication Critical patent/CN107678961A/zh
Pending legal-status Critical Current

Links

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/3604Software analysis for verifying properties of programs
    • G06F11/3612Software analysis for verifying properties of programs by runtime analysis

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)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种接口测试方法及装置,上述方法包括以下步骤:将业务会话接口即REST API封装成对应的库函数;通过测试用例调用所述库函数,对所述REST API进行测试。上述技术方案,通过测试用例调用由REST API封装成的库函数,实现对REST API的自动化测试,节省了人力物力,提高了测试效率。

Description

一种接口测试方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种接口测试方法及装置。
背景技术
接口通常是指系统之间交互的接口,或者某个系统对外提供的一些接口,例如:REST API接口,为了保证接口后续正常工作,提前对接口进行测试就显得尤为重要,因为通过接口测试可以及早发现一些和预期不一致的错误。
目前对接口测试还仅仅停留在通过部署大量设备、投入人员进行测试,这种测试方式一方面耗费大量的人力物力,另一方面降低了测试效率。
因此,在已经部署好的系统中,如何实现接口测试的自动化是亟待解决的技术问题。
发明内容
本发明提供一种接口测试方法及装置,以解决上述问题。
本发明实施例提供一种接口测试方法,包括以下步骤:将业务会话接口即RESTAPI封装成对应的库函数;
通过测试用例调用所述库函数,对所述REST API进行测试。
本发明实施例还提供一种接口测试置,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;
将业务会话接口即REST API封装成对应的库函数;
通过测试用例调用所述库函数,对所述REST API进行测试。
本发明实施例还提供一种接口测试置,包括用户认证模块、自定义库模块、任务处理模块、报告生成模块;其中,所述用户认证模块通过所述自定义库模块与所述任务处理模块相连;所述自定义库模块通过所述任务处理模块与所述报告生成模块相连。
本发明实施例提供的技术方案:将业务会话接口即REST API封装成对应的库函数;通过测试用例调用所述库函数,对所述REST API进行测试。
上述技术方案,通过测试用例调用由REST API封装成的库函数,实现对REST API的自动化测试,节省了人力物力,提高了测试效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1所示为本发明实施例1的接口测试装置结构图;
图2所示为本发明实施例2的接口测试方法流程图;
图3所示为本发明实施例3的接口测试装置结构图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
REST:Representational State Transfer,表现状态传输,用固定的URL和可变的参数访问某个服务,来完成一系列业务请求。每一个URL代表一种资源;客户端和服务器之间,传递这种资源的某种表现层(json格式);客户端通过几个HTTP动词GET、POST、PUT和DELETE,对服务器端资源进行操作,对应着:获取、创建、修改和删除。
RF框架:Robot Framework框架是一个通用的测试框架,易于使用,采用表格式语法,统一测试用例格式;重用性好,可以利用现有关键字来组合新关键字;结果报告和日志采用HTML格式,易于阅读;易于扩展,提供了简单API,用户可以自定义的基于Python或者Java的测试库;易于集成,提供了命令行接口和基于XML的输出文件;功能全面,支持WEB测试(Selenium)、Java GUI测试,启动线程、Telnet、SSH等;提供tag标签来分类和选择你的案例执行;内置支持变量variables,支持不同的环境进行测试。
本发明基于Robot Framework测试框架,对已经部署好的系统进行自动化的RESTAPI接口测试,快速发现系统问题,节省人力、时间和硬件资源,提高测试效率。所谓的自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程,通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较;将此过程转化为自动化地进行,可极大的节省人力、时间和硬件资源,提高测试效率。
上述REST API接口自动化测试方案具体实现过程如图1所示:
图1所示为本发明实施例1的接口测试装置结构图,包括用户认证模块、自定义库模块、任务处理模块、报告生成模块;其中,所述用户认证模块通过所述自定义库模块与所述任务处理模块相连;所述自定义库模块通过所述任务处理模块与所述报告生成模块相连。
进一步地,所述用户认证模块,通过解析用户编辑的配置文件,提取系统地址、用户名、密码,登录系统,获取业务会话session,并将业务会话信息传输至所述自定义库模块。
进一步地,所述自定义库模块,用于将业务会话接口即REST API封装成对应的库函数,供所述任务处理模块调用。
进一步地,所述任务处理模块,用于通过测试用例调用所述库函数,对所述RESTAPI进行测试,并将测试执行结果输出至所述报告生成模块。
进一步地,所述报告生成模块,用于根据测试执行结果,输出测试报告。
优选地,由于使用的RF框架,根据实际的测试用例,按照RF框架的语法,调用写好的库函数,一个测试用例通常需要调用多个REST API来实现。
优选地,执行测试时,可以通过RF框架的界面执行测试,也可以通过命令行执行测试。测试执行过程中若REST API返回的是taskid,说明任务下发到了底层,这时候系统会等待并轮询task的结果,直到task返回一个结果(成功或失败),再向下进行。
上述技术方案基于Robot Framework测试框架,可以对已经部署好的系统进行自动化的REST API测试,快速发现系统问题,节省人力、时间和硬件资源,提高测试效率。
图2所示为本发明实施例2的接口测试方法流程图,包括以下步骤:
步骤201;将业务会话接口即REST API封装成对应的库函数;
进一步地,所述REST API为一个或多个。
进一步地,通过解析用户编辑的配置文件,提取系统地址、用户名、密码,登录系统,获取所述业务会话。
步骤202:通过测试用例调用所述库函数,对所述REST API进行测试。
进一步地,通过测试框架即Robot Framework的界面执行测试;或者,通过命令行执行测试。
进一步地,测试执行过程中,若所述REST API返回一个任务号即taskid,则等待并轮询所述task的结果,直至所述task返回成功或失败。
进一步地,测试执行完毕后,根据测试执行结果,输出测试报告。
本发明实施例基于Robot Framework测试框架,对已经部署好的系统进行自动化的REST API测试,快速发现系统问题,节省人力、时间和硬件资源,提高测试效率。
图3所示为本发明实施例3的接口测试装置结构图,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;
将业务会话接口即REST API封装成对应的库函数;
通过测试用例调用所述库函数,对所述RESTAPI进行测试。
进一步地,所述REST API为一个或多个。
进一步地,通过解析用户编辑的配置文件,提取系统地址、用户名、密码,登录系统,获取所述业务会话。
进一步地,通过测试框架即Robot Framework的界面执行测试;或者,通过命令行执行测试。
进一步地,测试执行过程中,若所述RESTAPI返回一个任务号即taskid,则等待并轮询所述task的结果,直至所述task返回成功或失败。
进一步地,测试执行完毕后,根据测试执行结果,输出测试报告。
本发明实施例提供的技术方案:将业务会话接口即REST API封装成对应的库函数;通过测试用例调用所述库函数,对所述RESTAPI进行测试。
上述技术方案,通过测试用例调用由REST API封装成的库函数,实现对REST API的自动化测试,节省了人力物力,提高了测试效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (17)

1.一种接口测试方法,其特征在于,包括以下步骤:
将业务会话接口即REST API封装成对应的库函数;
通过测试用例调用所述库函数,对所述REST API进行测试。
2.根据权利要求1所述的接口测试方法,其特征在于,所述REST API为一个或多个。
3.根据权利要求1所述的接口测试方法,其特征在于,通过解析用户编辑的配置文件,提取系统地址、用户名、密码,登录系统,获取所述业务会话。
4.根据权利要求1所述的接口测试方法,其特征在于,通过测试框架即RobotFramework的界面执行测试;或者,通过命令行执行测试。
5.根据权利要求4所述的接口测试方法,其特征在于,测试执行过程中,若所述RESTAPI返回一个任务号即task id,则等待并轮询所述task的结果,直至所述task返回成功或失败。
6.根据权利要求5所述的接口测试方法,其特征在于,测试执行完毕后,根据测试执行结果,输出测试报告。
7.一种接口测试装置,其特征在于,包括处理器,适于实现各指令;存储设备,适于存储多条指令,所述指令适于由所述处理器加载并执行;
将业务会话接口即REST API封装成对应的库函数;
通过测试用例调用所述库函数,对所述REST API进行测试。
8.根据权利要求7所述的接口测试装置,其特征在于,所述REST API为一个或多个。
9.根据权利要求7所述的接口测试装置,其特征在于,通过解析用户编辑的配置文件,提取系统地址、用户名、密码,登录系统,获取所述业务会话。
10.根据权利要求7所述的接口测试装置,其特征在于,通过测试框架即RobotFramework的界面执行测试;或者,通过命令行执行测试。
11.根据权利要求10所述的接口测试装置,其特征在于,测试执行过程中,若所述RESTAPI返回一个任务号即task id,则等待并轮询所述task的结果,直至所述task返回成功或失败。
12.根据权利要求11所述的接口测试装置,其特征在于,测试执行完毕后,根据测试执行结果,输出测试报告。
13.一种接口测试装置,其特征在于,包括用户认证模块、自定义库模块、任务处理模块、报告生成模块;其中,所述用户认证模块通过所述自定义库模块与所述任务处理模块相连;所述自定义库模块通过所述任务处理模块与所述报告生成模块相连。
14.根据权利要求13所述的接口测试装置,其特征在于,所述用户认证模块,通过解析用户编辑的配置文件,提取系统地址、用户名、密码,登录系统,获取业务会话session,并将业务会话信息传输至所述自定义库模块。
15.根据权利要求14所述的接口测试装置,其特征在于,所述自定义库模块,用于将业务会话接口即REST API封装成对应的库函数,供所述任务处理模块调用。
16.根据权利要求15所述的接口测试装置,其特征在于,所述任务处理模块,用于通过测试用例调用所述库函数,对所述REST API进行测试,并将测试执行结果输出至所述报告生成模块。
17.根据权利要求16所述的接口测试装置,其特征在于,所述报告生成模块,用于根据测试执行结果,输出测试报告。
CN201710880551.5A 2017-09-26 2017-09-26 一种接口测试方法及装置 Pending CN107678961A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710880551.5A CN107678961A (zh) 2017-09-26 2017-09-26 一种接口测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710880551.5A CN107678961A (zh) 2017-09-26 2017-09-26 一种接口测试方法及装置

Publications (1)

Publication Number Publication Date
CN107678961A true CN107678961A (zh) 2018-02-09

Family

ID=61138030

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710880551.5A Pending CN107678961A (zh) 2017-09-26 2017-09-26 一种接口测试方法及装置

Country Status (1)

Country Link
CN (1) CN107678961A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109344077A (zh) * 2018-10-24 2019-02-15 郑州云海信息技术有限公司 RestAPI特性测试方法、装置、设备及存储介质
CN110928771A (zh) * 2019-10-30 2020-03-27 苏州浪潮智能科技有限公司 一种定时自动化批量测试Rest接口的方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377104A (zh) * 2012-04-19 2013-10-30 腾讯科技(深圳)有限公司 测试方法及装置
EP3021225A1 (en) * 2014-11-14 2016-05-18 Mastercard International, Inc. Automated configuration code based selection of test cases for payment terminals

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103377104A (zh) * 2012-04-19 2013-10-30 腾讯科技(深圳)有限公司 测试方法及装置
EP3021225A1 (en) * 2014-11-14 2016-05-18 Mastercard International, Inc. Automated configuration code based selection of test cases for payment terminals

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郭顺: "手机统一通信平台Twitter接口技术研究", 《中国优秀硕士学位论文全文数据库》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109344077A (zh) * 2018-10-24 2019-02-15 郑州云海信息技术有限公司 RestAPI特性测试方法、装置、设备及存储介质
CN110928771A (zh) * 2019-10-30 2020-03-27 苏州浪潮智能科技有限公司 一种定时自动化批量测试Rest接口的方法及系统

Similar Documents

Publication Publication Date Title
US11151083B2 (en) Generating target application packages for groups of computing devices
CN109933522B (zh) 一种自动化用例的测试方法、测试系统及存储介质
CN108519952B (zh) 一种分布式的web自动化测试系统及方法
US9459995B2 (en) Compliance testing engine for integrated computing system
CN107526676B (zh) 一种跨系统测试方法及装置
CN106776280B (zh) 可配置性能测试装置
CN104821954B (zh) 一种跨平台远程过程调用方法
CN107957940B (zh) 一种测试日志处理方法、系统及终端
CN109379326B (zh) Xml报文规则校验方法、设备和存储介质
CN108521353A (zh) 定位性能瓶颈的处理方法、设备及可读存储介质
CN115686540B (zh) 基于鸿蒙系统的rpa控制方法及系统
CN110502212A (zh) 一种面向多语言的高并发在线开发支撑方法
US10439887B2 (en) Generic test framework for service interfaces
CN107766509A (zh) 一种网页静态备份的方法和装置
CN110765013A (zh) 一种流程自动化执行方法及系统
CN106897216A (zh) 测试软件的方法和装置
CN113760730B (zh) 一种自动化测试的方法和装置
CN111966465B (zh) 一种实时修改宿主机配置参数的方法、系统、设备及介质
CN106209515A (zh) 接入网设备自动化测试系统
CN107395747A (zh) 一种基于stf平台的高扩展方法
CN113836014A (zh) 一种接口测试方法、装置、电子设备和存储介质
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
CN105516337B (zh) 基于动态加载机制的web站点对接解析方法
Vanhove et al. Tengu: An experimentation platform for big data applications
CN107678961A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20180209

RJ01 Rejection of invention patent application after publication