接口测试(九)jmeter——关联(JSON提取器)

一、JSON提取器介绍

  1. 要检查的响应字段:样本数据源
  2. 引用名称:可自定义设置
  3. 引用方法:${引用变量名}
  4. 匹配数字
匹配数字 含义
-1 表示全部
0 随机
1 第一个
2 第二个
... 以此类推
  1. 缺省值:匹配失败时的默认值ERROR,可以不写

二、json path 表达式

1. 示例:使用 json path 表达式提取 data 数据
json path 表达式为:$.data

javascript 复制代码
{
    "code":"0",
    "msg":"success",
    "data":"123456"
}

2. 验证表达式是否正确的方式。在响应结果中,可以选择【JSON Path Tester】,在【JSON Path Expression】中输入表达式,点击【Test】,查看是否获取成功,若获取成功,则表达式正确

三、需求1:短信验证码和注册接口关联

注:后置处理器,放在获取数据的请求的子级,数据一般从【察看结果树】的响应数据获取

1. 获取数据的请求为【HTTP请求-短信验证码】,因此需要在【HTTP请求-短信验证码】中添加【JSON提取器】,【JSON提取器】放在【HTTP请求-短信验证码】下面

2. 在响应结果中验证需要填入的JSON表达式是否正确?若表达式正确,将表达式复制到【JSON提取器】中


3. 【JSON提取器】中【Name of created variables】值为code,因此【HTTP请求-注册】中,verificationCode修改为${code},即可关联成功

4. 运行后,检查【察看结果树】,验证码值【HTTP请求-短信验证码】响应数据=【HTTP请求-注册】请求

四、需求2:登陆后,完善用户信息

1. 从/merchant/complete接口请求数据中得知,userId 需要根据实际进行变化,因此需要将 userId 参数化

2. userId是从【HTTP请求-登陆】的响应数据中获取的

3. 【JSON提取器】应该放在【HTTP请求-登陆】的子级中,【HTTP请求-登陆】下的【JSON提取器】配置如下

4. 因缺少Authorization请求头,出现验签失败提示,需要添加 token 值

5. 验证 json 表达式是否正确,JSON表达式为 ...token 或 .data.token_info.token
通过 JSON Path 表达式获取 userid、token(【完善用户信息】需要依赖【登陆】返回的 token)

6. 将正确的JSON表达式,写入【HTTP请求-登陆】中的【JSON提取器】中,每个参数都要对应配置如下:

7. 【HTTP请求-完善用户信息】请求头需要包含token值,故可以单独给【HTTP请求-完善用户信息】配置【HTTP信息头管理器】。将【HTTP请求-登陆】响应结果的token值,传给【HTTP请求-完善用户信息】,作为请求头

8. 【察看结果树】

相关推荐
se-tester3 天前
JMeter、Postman 和 SoapUI 在做接口测试上的优势和缺点
测试工具·jmeter·接口测试·postman·soapui
feathered-feathered4 天前
测试实战【用例设计】自己写的项目+功能测试(1)
java·服务器·后端·功能测试·jmeter·单元测试·压力测试
开开心心就好5 天前
内存清理软件灵活设置,自动阈值快捷键清
运维·服务器·windows·pdf·harmonyos·risc-v·1024程序员节
学传打活7 天前
【边打字.边学昆仑正义文化】_5_宇宙物种创造简史(1)
微信公众平台·1024程序员节·汉字·昆伦正义文化
xcLeigh8 天前
打破机房围墙:VMware+cpolar构建跨网络虚拟实验室
vmware·内网穿透·cpolar·实验室·远程访问·1024程序员节
质量保障小乔9 天前
JMeter+Jenkins+AI自动化测试
jmeter
开开心心就好9 天前
免费轻量电子书阅读器,多系统记笔记听书
linux·运维·服务器·安全·ddos·可信计算技术·1024程序员节
unable code10 天前
流量包取证-大流量分析
网络安全·ctf·misc·1024程序员节·流量包取证
开开心心就好10 天前
实用PDF擦除隐藏信息工具,空白处理需留意
运维·服务器·windows·pdf·迭代器模式·桥接模式·1024程序员节