Jmeter获取接口返回参数值的两种方式

本文详细介绍JMeter中正则表达式提取器与JSON提取器的使用方法,包括配置步骤及实例说明,帮助读者掌握从API响应中高效提取参数值的技巧。

1、Jmeter获取API Response中参数值的两种方法:

(1)、正则表达式提取器
(2)、JSON提取器

2、正则表达式提取器使用详解:

在HTTP请求下面添加–>后置处理器–>正则表达式提取器
在这里插入图片描述
引用名称:下次传参的变量名
正则表达式:自己填写或者利用正则表达式测试器小工具获取到的正则表达式
模板:如果正则表达式有多个提取结果,则结果是数组形式,模板111222(两边有美元符号,不知道什么原因在这里不能显示)等等,表示把解析到的第几个值赋给变量,从1开始匹配,以此类推
匹配数字(0代表随机):正则表达式匹配数据的结果可以看做一个数组,表示如何取值,0代表随机取值,正数n则表示取第n个值(比如1代表取第一个值,2代表取第二个值…),负数则表示提取所有符合条件的值
缺省值:匹配失败时候的默认值,通常用于后续的逻辑判断,一般通常为特定含义的英文大写组合,比如ERROR等
2.1、正则表达式小工具–Regester
将API的相应数据内容复制到Regester工具中的源文本中,输入正则表达式,输出结果。
在这里插入图片描述

3、JSON提取器使用详解

在HTTP请求下添加–>后置处理器–>JSON提取器
在这里插入图片描述
Names of created Variables:下次传参引用的变量名
JSON Path expressions:JSON表达式,根据返回值一层一层的取值
Match No:匹配哪个,可为空即默认第一个
Default Value:未取到值的时候默认值

4、实例说明

4.1、用户自定义变量
在这里插入图片描述
获取当前时间戳:利用Jmeter函数助手__time
点击Tools–>函数助手对话框
在这里插入图片描述
4.2、HTTP请求默认值
在这里插入图片描述
4.3、HTTP请求
在这里插入图片描述
4.4、Debug Sampler
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

### 如何在 JMeter 中进行接口参数传递 #### 使用 HTTP 请求传递参数JMeter接口测试中,可以通过 `HTTP Request` 方法来设置并传递参数。这些参数可以分为两种形式:一种是在 URL 后面附加查询字符串的形式(GET 请求),另一种是以表单字段的方式提交到服务器(POST 请求)。对于 GET 请求来说,在地址栏后面加上形如 `?key=value&key2=value2` 的键对即可完成参数的传递[^1]。 #### 设置 POST 请求中的 Body 数据 当需要发送 POST 请求时,则可以在 `Body Data` 或者 `Parameters` 部分输入相应的数据。如果目标 API 接受 JSON 格式的请求体,那么应该选择合适的 Content-Type 头部信息 (通常是 application/json),并将实际的数据作为 JSON 字符串放入 Body Data 区域内[^4]。 以下是配置 POST 请求的一个简单例子: ```json { "username": "testUser", "password": "securePass" } ``` 这段代码展示了如何构建一个包含用户名和密码字段的标准登录请求JSON对象[^2]。 #### 动态变量替换功能 为了提高自动化程度以及减少重复劳动量,JMeter 提供了强大的函数库允许我们定义动态变化的内容比如时间戳、随机数甚至是执行外部脚本来生成特定格式的结果用于每次运行期间自动更新某些固定不变但又需经常调整其具体数的部分——这便是所谓的“参数化”。例如 `${__RandomString(8,abcdefg)}` 可用来创建长度为8由指定字符组成的随机字符串[^3]。 另外得注意的是,在处理涉及安全性考量的操作诸如签名(sign)机制下的接口调用过程中,可能还需要借助额外的语言环境像Python配合相应算法计算得出最终符合要求的有效载荷再反馈给前端界面填写至对应位置从而达成整个流程闭环的目的。 #### 绕过登录验证的方法 有些情况下,直接访问受限资源前必须先经历身份认证环节才能获取后续操作所需的令牌(Token)或者其他授权凭证。此时可考虑采用预先录制好的会话回放模式或者手动解析返回包提取必要组件填充进新的请求头里去实现无缝衔接的效果。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值