JMeter中如何将Cookie值从一个请求传递至另一个线程组请求
优先方案:用HTTP Cookie管理器自动管理
- 给测试计划添加HTTP Cookie管理器:右键测试计划 → 添加 → 配置元件 → HTTP Cookie管理器
- 这个元件会自动捕获所有响应中的Cookie,后续请求默认自动携带。添加后重新运行,检查-57请求是否已自动带上目标Cookie。
手动提取传递方案(自动管理失效时用)
如果自动管理不生效,按以下步骤手动处理:
1. 从-32请求中提取Cookie
在-32请求下添加正则表达式提取器:
- 右键-32请求 → 添加 → 后置处理器 → 正则表达式提取器
- 配置如下:
- 引用名称:
auth_cookies(自定义,后续调用用) - 正则表达式:
Set-Cookie: (.*?); - 模板:
$1$ - 匹配数字:
-1(提取所有匹配的Cookie) - 缺省值:留空
- 引用名称:
2. 在-57请求中注入Cookie
根据你的需求(请求头或请求体)选择方式:
- 请求头注入:给-57请求添加HTTP信息头管理器,新增
Cookie头,值填${auth_cookies_1}; ${auth_cookies_2}(对应两个Cookie,序号根据实际提取结果调整) - 请求体注入:直接在-57请求的请求体对应位置插入
${auth_cookies_1}和${auth_cookies_2}
3. 验证结果
运行测试后,通过查看结果树检查-57请求的请求内容,确认Cookie已正确携带。
注意事项
- 若Cookie带HttpOnly属性,需在HTTP Cookie管理器中勾选
Allow cookies with the httponly attribute,或把Cookie Policy设为standard - 确保-32请求在-57请求之前执行,否则提取器拿不到Cookie值
内容的提问来源于stack exchange,提问作者Kamal
相关产品推荐
相关产品推荐

