一种REST API自动化测试方法及系统技术方案

技术编号:17007188 阅读:23 留言:0更新日期:2018-01-11 03:39
本发明专利技术公开了一种REST API自动化测试方法及系统,其中该方法包括:获取预先设定的公共函数,公共函数为预先将不同测试用例中相同的步骤封装得到的函数;获取预先设定的测试公共数据,测试公共数据为不同测试用例中包含的相同的数据;获取与测试当前REST API接口对应的测试函数,测试函数为测试当前REST API接口所需的特有的函数;将公共函数、测试公共数据和测试函数组合成当前测试用例,并基于当前测试用例完成对当前REST API接口的测试。本发明专利技术提供的一种REST API自动化测试方法解决了如何提高测试REST API的测试效率的技术问题。

【技术实现步骤摘要】
一种RESTAPI自动化测试方法及系统
本专利技术涉及RESTAPI
,更具体地说,涉及一种RESTAPI自动化测试方法及系统。
技术介绍
RESTAPI是基于REST(RepresentationalStateTransfer,表述性状态传递)标准的开放接口,是设计Web服务的一种方法,对外通过URL提供http访问资源。实际应用中,需要对RESTAPI接口的功能进行测试。现有的一种测试RESTAPI接口的方法是根据不同的测试要求创建不同的测试用例,这里的测试用例是为测试RESTAPI接口而编制的一组测试输入、执行条件以及预期结果。每个测试用例的内容均包括:先在包含PESTAPI接口的存储设备上创建和设置测试内容,再通过测试工具设置参数组合各种请求,发送请求至RESTAPI接口,然后测试发送过去的请求能否被RESTAPI接口通过,以及RESTAPI接口能否根据请求返回正确的测试内容。然而,现有的一种测试RESTAPI接口的方法中,不同测试用例的测试步骤基本完全相同,重复工作多,测试效率低。综上所述,如何提高测试RESTAPI的测试效率是目前本领域技术人员亟待解决的问题。
技术实现思路
本专利技术的目的是提供一种RESTAPI自动化测试方法,其能解决如何提高测试RESTAPI的测试效率的技术问题。本专利技术还提供了一种RESTAPI自动化测试系统。为了实现上述目的,本专利技术提供如下技术方案:一种RESTAPI自动化测试方法,包括:获取预先设定的公共函数,所述公共函数为预先将不同测试用例中相同的步骤封装得到的函数;获取预先设定的测试公共数据,所述测试公共数据为不同测试用例中包含的相同的数据;获取与测试当前RESTAPI接口对应的测试函数,所述测试函数为测试所述当前RESTAPI接口所需的特有的函数;将所述公共函数、所述测试公共数据和所述测试函数组合成当前测试用例,并基于所述当前测试用例完成对所述当前RESTAPI接口的测试。优选的,所述基于所述当前测试用例完成对所述当前RESTAPI接口的测试之后,还包括:调整所述当前测试用例,基于调整后的所述当前测试用例完成对所述当前RESTAPI接口的回归测试。优选的,预先将不同测试用例中相同的步骤封装得到所述公共函数,包括:基于python语言的第三方库paramiko对不同测试用例中相同的登录存储设备、发送CLI命令至所述存储设备、接收所述存储设备发送的执行所述CLI命令的执行结果的步骤进行二次封装得到对应的公共函数,所述存储设备为包括RESTAPI接口的设备;基于所述python语言内置模块logging对不同测试用例中相同的保存日志、分级日志的步骤进行二次封装得到对应的公共函数;基于所述python语言的第三方库requests对不同测试用例中相同的发送web请求至包括RESTAPI接口的存储设备、接收包括RESTAPI接口的存储设备返回与所述web请求对应的数据的步骤进行二次封装得到对应的公共函数。优选的,预先设定测试公共数据,包括:预先将不同RESTAPI接口对应的URL中相同的资源设定为对应的测试公共数据;预先将包括RESTAPI接口的存储设备中不同的用户名、密码设定为对应的测试公共数据。本专利技术还提供了一种RESTAPI自动化测试系统,包括:获取公共函数模块,用于获取预先设定的公共函数,所述公共函数为预先将不同测试用例中相同的步骤封装得到的函数;获取测试公共数据模块,用于获取预先设定的测试公共数据,所述测试公共数据为不同测试用例中包含的相同的数据;获取测试函数模块,用于获取与测试当前RESTAPI接口对应的测试函数,所述测试函数为测试所述当前RESTAPI接口所需的特有的函数;组合模块,用于将所述公共函数、所述测试公共数据和所述测试函数组合成当前测试用例,并基于所述当前测试用例完成对所述当前RESTAPI接口的测试。优选的,还包括:回归测试模块,用于在所述组合模块基于所述当前测试用例完成对所述当前RESTAPI接口的测试之后,调整所述当前测试用例,基于调整后的所述当前测试用例完成对所述当前RESTAPI接口的回归测试。优选的,还包括:预设公共函数模块,用于基于python语言的第三方库paramiko对不同测试用例中相同的登录存储设备、发送CLI命令至所述存储设备、接收所述存储设备发送的执行所述CLI命令的执行结果的步骤进行二次封装得到对应的公共函数,所述存储设备为包括RESTAPI接口的设备;基于所述python语言内置模块logging对不同测试用例中相同的保存日志、分级日志的步骤进行二次封装得到对应的公共函数;基于所述python语言的第三方库requests对不同测试用例中相同的发送web请求至包括RESTAPI接口的存储设备、接收包括RESTAPI接口的存储设备返回与所述web请求对应的数据的步骤进行二次封装得到对应的公共函数。优选的,还包括:预设测试公共数据模块,用于预先将不同RESTAPI接口对应的URL中相同的资源设定为对应的测试公共数据;预先将包括RESTAPI接口的存储设备中不同的用户名、密码设定为对应的测试公共数据。本专利技术提供的一种RESTAPI自动化测试方法,包括获取预先设定的公共函数,公共函数为预先将不同测试用例中相同的步骤封装得到的函数;获取预先设定的测试公共数据,测试公共数据为不同测试用例中包含的相同的数据;获取与测试当前RESTAPI接口对应的测试函数,测试函数为测试当前RESTAPI接口所需的特有的函数;将公共函数、测试公共数据和测试函数组合成当前测试用例,并基于当前测试用例完成对当前RESTAPI接口的测试。本专利技术提供的一种RESTAPI自动化测试方法,通过获取预先设定的公共函数和测试公共数据,获取与测试当前RESTAPI接口对应的测试函数,然后将公共函数、公共数据和测试函数组合成当前测试用例,从而使得不需要重复不同测试用例中相同的函数和数据,简化了组合测试用例的过程,进而提高了测试RESTAPI接口的测试效率。综上所述,本专利技术提供的一种RESTAPI自动化测试方法解决了如何提高测试RESTAPI的测试效率的技术问题。本专利技术提供的一种RESTAPI自动化测试系统也解决了相应的技术问题。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例提供的一种RESTAPI自动化测试方法的流程图;图2为本专利技术实施例提供的一种RESTAPI自动化测试系统的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,图1为本专利技术实施例提供的一种RESTAPI自动化测试方法的流程图。本专利技术实施例提供的一种RESTAPI自动化测试方法中各个步骤的动作执行主体可以是RESTAPI自动本文档来自技高网...
一种<a href="http://www.xjishu.com/zhuanli/55/201710757877.html" title="一种REST API自动化测试方法及系统原文来自X技术">REST API自动化测试方法及系统</a>

【技术保护点】
一种REST API自动化测试方法,其特征在于,包括:获取预先设定的公共函数,所述公共函数为预先将不同测试用例中相同的步骤封装得到的函数;获取预先设定的测试公共数据,所述测试公共数据为不同测试用例中包含的相同的数据;获取与测试当前REST API接口对应的测试函数,所述测试函数为测试所述当前REST API接口所需的特有的函数;将所述公共函数、所述测试公共数据和所述测试函数组合成当前测试用例,并基于所述当前测试用例完成对所述当前REST API接口的测试。

【技术特征摘要】
1.一种RESTAPI自动化测试方法,其特征在于,包括:获取预先设定的公共函数,所述公共函数为预先将不同测试用例中相同的步骤封装得到的函数;获取预先设定的测试公共数据,所述测试公共数据为不同测试用例中包含的相同的数据;获取与测试当前RESTAPI接口对应的测试函数,所述测试函数为测试所述当前RESTAPI接口所需的特有的函数;将所述公共函数、所述测试公共数据和所述测试函数组合成当前测试用例,并基于所述当前测试用例完成对所述当前RESTAPI接口的测试。2.根据权利要求1所述的方法,其特征在于,所述基于所述当前测试用例完成对所述当前RESTAPI接口的测试之后,还包括:调整所述当前测试用例,基于调整后的所述当前测试用例完成对所述当前RESTAPI接口的回归测试。3.根据权利要求1所述的方法,其特征在于,预先将不同测试用例中相同的步骤封装得到所述公共函数,包括:基于python语言的第三方库paramiko对不同测试用例中相同的登录存储设备、发送CLI命令至所述存储设备、接收所述存储设备发送的执行所述CLI命令的执行结果的步骤进行二次封装得到对应的公共函数,所述存储设备为包括RESTAPI接口的设备;基于所述python语言内置模块logging对不同测试用例中相同的保存日志、分级日志的步骤进行二次封装得到对应的公共函数;基于所述python语言的第三方库requests对不同测试用例中相同的发送web请求至包括RESTAPI接口的存储设备、接收包括RESTAPI接口的存储设备返回与所述web请求对应的数据的步骤进行二次封装得到对应的公共函数。4.根据权利要求1所述的方法,其特征在于,预先设定测试公共数据,包括:预先将不同RESTAPI接口对应的URL中相同的资源设定为对应的测试公共数据;预先将包括RESTAPI接口的存储设备中不同的用户名、密码设定为对应的测试公共数据。5.一种RESTAPI自动化测试系统,其特征...

【专利技术属性】
技术研发人员:王宜燕
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1