一种定时自动化批量测试Rest接口的方法及系统技术方案

技术编号:23604517 阅读:43 留言:0更新日期:2020-03-28 05:39
本发明专利技术提供一种定时自动化批量测试Rest接口的方法及系统,方法包括如下步骤:S1.在测试机部署测试脚本;S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;S3.配置测试脚本根据登录WEB应用程序获取登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;若否,则返回步骤S2;若是,则配置测试脚本对测试数据进行删除,并生成测试报告。

A method and system of batch test rest interface with timing automation

【技术实现步骤摘要】
一种定时自动化批量测试Rest接口的方法及系统
本专利技术属于服务器软件测试
,具体涉及一种定时自动化批量测试Rest接口的方法及系统。
技术介绍
Rest(RepresentationalStateTransfer)表述性状态转移,一种软件架构风格。在对B/S架构的WEB应用程序进行RestAPI接口测试时,我们需要输入Rest接口的URL以及参数和需要的HTTP方法和HTTPheader内容,发送后等待返回的内容,对内容进行验证,是否符合要求。HTTPHeader中一般需要包含Cookie和token,Cookie中保存着本次会话的SessionID,服务器根据SessionID来标识本次会话。而token主要用于客户端访问时的服务端验证。进行Rest接口测试时,我们必须在header中添加SessionID和token的值,这样才能通过服务端校验,服务端才能根据Rest请求的URL和参数返回预期的结果。而SessionID和token的值是需要登录操作后服务端返回的。当进行批量接口测试时,每次都需要手动添加SessionID和token的值。而业务接口测试时,依赖某些资源,需要提前构造好这些数据。各业务模块依次执行,需要耗费大量的时间,造成效率低下。如果想重新测试Rest接口,需要先将上次执行产生的残余数据清除,才能进行下一次的测试。此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种定时自动化批量测试Rest接口的方法及系统,是非常有必要的。
技术实现思路
对现有技术的上述Rest接口批量测试需手动进行,耗费大量时间,效率低下的缺陷,本专利技术提供一种定时自动化批量测试Rest接口的方法及系统,以解决上述技术问题。第一方面,本专利技术提供一种定时自动化批量测试Rest接口的方法,包括如下步骤:S1.在测试机部署测试脚本;S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;S3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;若否,则返回步骤S2;若是,则配置测试脚本对测试数据进行删除,并生成测试报告。进一步地,步骤S5之后包括如下步骤:S6.配置测试脚本定时执行,每达到一次定时时间,返回步骤S2。定时自动化测试WEB应用程序的Rest接口,节省人工发现问题的时间和成本,能够及时发现问题。进一步地,步骤S2具体步骤如下:S21.配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;S22.配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;S23.配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID。测试脚本通过HTTP的GET、POST命令对WEB应用程序登录组件的Rest接口进行测试。进一步地,步骤S3具体步骤如下:S31.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;S32.配置测试脚本通过Web应用程序基础组件的Rest接口创建登录后用户以及生成各业务组件的依赖数据。测试脚本对WEB应用程序的基础组件的Rest接口单独进行测试。进一步地,步骤S31中,通过HTTP的GET命令获取数据,通过HTTP的POST命令添加数据,通过HTTP的PUT命令修改数据。测试脚本通过HTTP的各种命令对基础组件的Rest接口进行测试。进一步地,步骤S4具体步骤如下:S41.配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的登录后用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;S42.配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;S43.配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息。测试脚本通过不同的Session,以及基础组件创建的不同用户进行登录,来达到多线程批量操作而不会相互影响,对WEB应用程序的各个业务组件的Rest接口进行同时并发测试。进一步地,步骤S5具体步骤如下:S51.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;S52.若否,则返回步骤S2;若是,则配置测试脚本通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;S53.配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件。测试脚本删除产生的基础数据,以便于测试脚本的定时执行。第二方面,本专利技术提供一种定时自动化批量测试Rest接口的系统,包括测试脚本部署模块,用于在测试机部署测试脚本;登录组件的Rest接口测试模块,用于配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;基础组件的Rest接口测试模块,用于配置测试脚本根据登录WEB应用程序获取登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;各业务组件的Rest接口测试模块,用于配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;测试完成判断模块,用于配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;定时模块,用于配置测试脚本定时执行,每达到一次定时时间,执行测试。进一步地,登录组件的Rest接口测试模块包括:会话ID获取单元,用于配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;登录请求单元,用于配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通本文档来自技高网...

【技术保护点】
1.一种定时自动化批量测试Rest接口的方法,其特征在于,包括如下步骤:/nS1.在测试机部署测试脚本;/nS2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;/nS3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;/nS4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;/nS5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;/n若否,则返回步骤S2;/n若是,则配置测试脚本对测试数据进行删除,并生成测试报告。/n

【技术特征摘要】
1.一种定时自动化批量测试Rest接口的方法,其特征在于,包括如下步骤:
S1.在测试机部署测试脚本;
S2.配置测试脚本通过WEB应用程序的登录组件登录,对WEB应用程序的登录组件的Rest接口进行测试,并获取登录后SessionID和token;
S3.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,对Web应用程序基础组件的Rest接口进行测试;
S4.配置测试脚本对WEB应用程序的各业务组件的Rest接口进行并发测试;
S5.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
若否,则返回步骤S2;
若是,则配置测试脚本对测试数据进行删除,并生成测试报告。


2.如权利要求1所述的定时自动化批量测试Rest接口的方法,其特征在于,
步骤S5之后包括如下步骤:
S6.配置测试脚本定时执行,每达到一次定时时间,返回步骤S2。


3.如权利要求1所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S2具体步骤如下:
S21.配置测试脚本通过HTTP的GET命令访问WEB服务器的根目录,并根据返回的响应报文Set-Cookie的值截取登录前SessionID,再用登录前SessionID标识本次会话;
S22.配置测试脚本通过HTTP的POST命令将登录前SessionID放在header中,并将当前用户名密码作为POST请求的参数一同放在请求报文中,再通过WEB应用程序登录组件的Rest接口请求登录WEB服务器;
S23.配置测试脚本接收WEB服务器返回的对当前用户名密码加密后的token及登录后SessionID。


4.如权利要求1所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S3具体步骤如下:
S31.配置测试脚本根据登录WEB应用程序获取的登录后SessionID和token,并通过Web应用程序基础组件的Rest接口获取、添加以及删除数据;
S32.配置测试脚本通过Web应用程序基础组件的Rest接口创建多个用户以及生成各业务组件的依赖数据。


5.如权利要求4所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S4具体步骤如下:
S41.配置测试脚本获取通过Web应用程序基础组件的Rest接口创建的多个用户,并设置每个用户通过Web应用程序登录组件登录,并获取每个用户的登录后SessionID和token;
S42.配置测试脚本根据登录每个用户登录WEB应用程序获取的登录后SessionID和token,并行采用HTTP的GET、POST、PUT以及DELETE命令测试各业务组件的Rest接口,对各业务测试组件的数据进行增删改查;
S43.配置测试脚本通过各业务组件的Rest接口接收WEB服务器返回的错误消息。


6.如权利要求5所述的定时自动化批量测试Rest接口的方法,其特征在于,步骤S5具体步骤如下:
S51.配置测试脚本判断WEB应用程序的各组件的Rest接口是否完成;
S52.若否,则返回步骤S2;
若是,则配置测试脚本通过HTTP的DELETE命令对Web应用程序基础组件的Rest接口生成的数据进行删除操作,并验证数据是否删除成功;
S53.配置测试脚本汇总WEB服务器返回的错误消息,并生成当前时间戳命名的测试报告文件。


7.一种定时自动化批量测试Rest接口的系统,其特征在于,包括
测试脚本部署模块(1)...

【专利技术属性】
技术研发人员:郭坤张海军
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1