OkHttp3+mysql+jenkins脚本实现接口自动化巡检

说明:

         实现在版本快速迭代过程中对系统接口的监控。只贴了部分关键代码

脚本实现:

  1. 数据驱动,针对目前公司系统,无需对测试脚本进行修改即可实现接口的巡检。
  2. 考虑到系统支持http类型,暂只支持get和post
  3. 使用数据库mysql的形式进行用例编写和管理

脚本设计思路:

  1. case数据准备:数据库维护case数据,包括url,method,data,header
  2. 参数处理:

a)通用参数准备,random,tm,reqId,stamp,用$$前缀作为标记

b)全局参数map准备,用于存储每次系统版本迭代的数据,以及每次请求过程中从响应信息中提取出来的参数用于下一个接口的传参,用##前缀作为标记

  3.http请求数据组装,其中这里header需要签名处理,data中需要参数替换

  4.jsonPath实现断言判断以及response参数提取,把结果回写数据库和回写全局map

  5.最后产出测试报告以及使用jenkins持续集成管理

 

具体实现说明(部分代码展示):

  1. case数据准备

a)数据库case准备

接口描述,url,uri,method,header,data,全局变量提取,断言判断,响应内容存储,测试分组,测试结果

data:

{"reqId":"$$reqId","stamp":"$$stamp","loginAccount":"##loginAccount"}

header:

{"Content-Type":"application/json","random":"$$random","sign":"$$sign"}

has_global_variable:

{"loginId":"$.data.loginId"}

expected:

{"$.code":"0"}

b)测试分组及范围

         在代码中,通过sql指定测试范围,且后续新增测试范围和调整时,只需要修改mysql中的数据即可,无需在脚本中编辑

         最后返回List形式,需要对这块进行分隔处理,存到一个bean里面

  2.参数处理

a)通用参数准备

b)版本初始化准备数据

包括系统信息,用户信息,手机设备信息,插件信息,存到数据库的dict表里面,提取出来存到map里面

 


  3.http请求数据组装

主方法启动

 

a)请求组装

 

 

其中header和data的处理,需要去循环全局变量map和公共参数替换

 

  4.jsonPath实现断言判断和提取全局变量

 

 

  5.使用jenkins持续集成管理

 

 

 

 

转载于:https://www.cnblogs.com/kasen95/p/10319691.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
OkHttp3和Retrofit2是两个在Java开发中常用的网络请求库,它们可以帮助我们方便地进行网络请求和数据解析。 OkHttp3是一个高效、可靠的HTTP客户端,它支持HTTP/2协议,可以处理网络请求、连接池、缓存等功能。它提供了简洁的API,使得发送HTTP请求变得非常简单。你可以使用OkHttp3来发送GET、POST等各种类型的请求,并且可以设置请求头、请求参数、超时时间等。 Retrofit2是一个基于OkHttp3的RESTful风格的网络请求库,它可以将HTTP API转换为Java接口。通过定义接口的方式,我们可以使用注解来描述请求的URL、请求方法、请求参数等信息。Retrofit2会根据这些注解自动生成相应的网络请求代码,使得我们可以以更加简洁的方式进行网络请求。 使用OkHttp3和Retrofit2进行网络请求的步骤如下: 1. 添加依赖:在项目的build.gradle文件中添加OkHttp3和Retrofit2的依赖。 2. 创建OkHttpClient对象:可以设置一些通用的配置,比如连接超时时间、读写超时时间等。 3. 创建Retrofit对象:通过Retrofit.Builder来创建Retrofit对象,并设置baseUrl、OkHttpClient等。 4. 定义接口:创建一个Java接口,使用注解描述请求的URL、请求方法、请求参数等信息。 5. 创建接口实例:通过Retrofit.create()方法来创建接口的实例。 6. 发起网络请求:调用接口实例的方法来发起网络请求,并处理响应结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值