Jmeter中json数据参数化、断言设置

第一步:光标定位到测试计划上,右键菜单"添加" -> Threads(users) -> 线程组,如下图

26a6a9db9a3bce4e79d89dd8e1a2d6882bf.jpg

第二步: 光标定位到线程组,右键菜单选择 "添加" -> Sampler -> HTTP请求,填写IP和端口、路径,协议填写http,方法POST,content encoding填写utf-8,Body Data填写json格式内容(关于 json 串的提取,可以使用 Badboy 自己录制的,也可以使用 Chrome 浏览器自带工具 "JavaScript 控制台 - Network" 进行捕捉,或是开发人员提供接口文档里复制粘贴),最后调整 json 数据的展现格式如下图所示:

7e60c8fe21709b4f06522c6b8e2a1db9c85.jpg

第三步, 光标定位到该HTTP请求上,右键菜单选择 "添加" -> 配置元件 -> HTTP 信息头管理器,然后信息头添加一条名称为 Content-Type,值为 application/json 即可:

2e760ac96cc3d2a7e2ea625fd67c903c281.jpg

第四步,给HTTP请求添加响应断言

比如请求返还的 json 串里,"errorCode":1 代表处理成功,errorCode 值为其他表示各种处理失败。那么光标定位到该HTTP请求上,右键菜单选择 "添加" -> 断言 -> 响应断言,要测试的响应字段选中 "响应文本",模式匹配规则选中 "Substring",要测试的模式添加并编辑其内容为 "errorCode":1。如下图

48c9cb379b8e841b0b28053ac360658b2dd.jpg

第五步, 使用 CSV Data Set Config 将 json 数据参数化

光标定位到线程组,右键菜单选择 "添加" -> 配置元件-> CSV Data Set Config,filename输入F:/apache-jmeter-2.13/apache-jmeter-2.13/bin/DeviceUID.csv, Variable Names 输入 UID,编辑DeviceUID.csv填写内容如下图所示:

6ca094f7e93755fc3db77b8ae1eb102ae5c.jpg

第六步, 返回到HTTP请求,编辑 Body Data 里的 json 串里需要参数化的地方,使用 ${UID} 等参数覆盖需要参数化的部分:

0c57a1b94123e75bcdd67402be5c94d1114.jpg

第七步,光标定位到线程组,右键菜单选择 "添加" -> 监听器->查看结果树和聚合报告,如下图所示:

90d34089c5346619953808cbb331d8cb413.jpg

第八步: 这时候你就可以使用参数化的 json 串进行压力测试啦

比如在CSV文件中增加多少个UID,在线程组就设置多少个线程数,如下图所示:

3b125c556e82c2823001c25d96de25093a7.jpg

第九步,点击运行按钮执行,结果如下,可分析结果

59912f376820b4189381bd7889fb52c2ee1.jpg

转载于:https://my.oschina.net/u/2315260/blog/3071739

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值