使用JMeter实现天气接口自动化

1、明白获取天气信息的流程

浏览器输入http://www.weather.com.cn/ 同时打开fiddler进行抓包。

经过认真观察,可以发现只有下面两条记录,是我们需要用到的。
第一条,是在天气输入框输入‘成都’时,获取到的城市代码参数。(红框显示的是‘成都‘’字段值已经被编码了)
第二条,是获取的成都的具体天气信息
可以明确我们使用JMeter需要构造这两条,注意header中是有referer
在这里插入图片描述

2、JMeter构造获取城市代码

2.1JMeter工作计划右键添加一个线程组,线程组右键添加—>Samper—>HTTP Request

正确填写HTTP的请求信息。通过第一步我们知道他是http协议,服务器的域名或IP,路径和参数,请求的方法,照着填写即可。可以自己给HTTP请求改名字,方便查找区分。
在这里插入图片描述

2.2 getCityCode请求右键—>添加—>config element—>HTTP Header Manager

写入header的信息。推荐一种简单方法是将fiddler抓包时获取的header复制,点击Add from Clipboard,就可以看到header已经被写好了。

2.3 线程组右键—>添加—>Listener—>View Results Tree
2.4 点击工具栏的绿色三角形运行(如果没有保存,会提示是否保存文件,这里保存就可以运行了)

观察结果树的右方框,已经出现我们想要的代码
在这里插入图片描述

2.5 关于请求中的参数我们也可以去添加,点击下方的Add,构造成key:value就可以了。如下

在这里插入图片描述

2.6 判定是否是你想获取的城市的代码,添加断言
2.6.1 getCityCode请求右键添加—>Assertions—>Response Assertion

patter to Test框中,添加断言的值
在这里插入图片描述

2.6.2 线程组右键添加—>Listener—>Assertion Results

点击运行,assertion results里没有提示信息,并且察看结果树没有红色的,说明断言成功
在这里插入图片描述

如果想查询的城市天气不止一个时,可以添加参数列表

线程组右键添加—>Pre processor—>User parameters—>点击下方Add Variable(根据你自己的想法添加个数user)
同时线程组的线程个数,和添加的user数一致。

在这里插入图片描述
在这里插入图片描述

3、JMeter关联。将第一个请求的结果信息传给第二个请求使用。

使用正则表达式将城市的代码信息提取出来。

3.1getCityCide请求右键—>添加—>Post processor—>Regular Expression Extractor

填入以下信息。
Name of created variable 变量名(将请求的结果赋值给它,方便下一个请求的使用)
Regular Expression 正则表达式(匹配出你想要的信息)
Template 匹配结果的第几个括号中的值。这里匹配第一个括号
Match 匹配哪些数字。1代表任意
在这里插入图片描述

4、JMeter获取城市具体天气信息

4.1线程组右键添加—>Sampler—>HTTP Request

这里改名为getWeather,完善请求信息。里面的citycode就是用的上一个请求的结果信息
在这里插入图片描述

点击运行
在这里插入图片描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值