查看原文
其他

Jmeter 压力测试中关于 Http 的那些事儿

点击关注 👉 Java技术图谱 2022-07-02

Http请求模拟


1、新建线程组

操作:鼠标右键测试计划 -> 添加 -> Threads(Users) -> 线程组 -> 修改测试计划名称

新建线程组


2、添加取样器HTTP请求

操作:鼠标右键线程组 -> 添加 -> Sampler -> HTTP请求 -> 填写请求参数

添加取样器


请求参数


3、开始Http请求


a. 添加察看结果树监听器,方便查看请求结果

操作:**鼠标右键线程组 -> 添加 -> 监听器 -> 察看结果树

察看结果树


b. 点击**工具栏上单击启动按钮(绿色箭头)**启动测试计划


开始验证


PS:响应数据默认显示格式为Text,可切换为JSON Path Tester格式


切换格式


JSON Path Tester


响应参数获取


之所以需要获取响应参数,主要是因为常常有这样的需求,要求将上一个接口的返回值作为下一个接口的请求参数。举个栗子:


获取即将上映电影中第一部电影的条目信息,这里我们需要完成两个步骤:


获取即将上映电影中的第一部电影的id,接口地址:
https://api.douban.com/v2/movie/coming_soon?count=2
得到id后,请求接口获取电影条目信息,接口地址:
http://api.douban.com/v2/movie/subject/${id}

接口返回值


1、添加后置处理器JSON Extractor

操作:将鼠标放置“获取即将上映电影”的HTTP请求上,并按右键 -> 添加 -> 后置处理器 -> JSON Extractor -> 填入变量名等信息

添加后置处理器


变量名等信息填写


2、添加取样器HTTP请求获取电影条目信息及参数使用


获取电影条目信息


3、启动测试计划


在“察看结果树”中可以看到,获取电影条目信息的HTTP请求中,请求参数正确。同时也得要正确的响应参数。


请求参数


响应参数


PS:如果需要多变量取值的话,可在JSON Extractor的配置中通过分号(;)将多个变量名分开。

需要注意的是,多个变量名的话,还需要填写Default Vaules,不然启动测试计划后会找不到变量,导致请求失败。

笔者这里是获取id和year两个变量,设置默认值为0和0,这个可随意设置,影响不大。


多变量取值

来源:https://www.jianshu.com/p/c0c09b5ef26a



Java技术交流群

有不少同学问我,大厂面试官到底喜欢问什么?想进大厂镀金。因此,我特意邀请了华为、腾讯、阿里的朋友进群,与大家一起交流经验,增长技术。

有兴趣入群的同学,可长按扫描下方二维码,一定要备注:城市+昵称+技术方向,根据格式备注,可更快被通过且邀请进群。

▲长按扫描


近期热文推荐

点个在看你最好看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存