如何在jMeter GUI中从响应头获取Cookies(无需user.properties)
无需修改user.properties的解决方案
当然有不用修改user.properties就能获取首次GET请求响应头中Cookies的方法,而且在JMeter GUI里操作起来非常直观,给你两种实用方案:
方案1:用HTTP Cookie管理器自动管理Cookies
- 如果你只是需要后续请求自动携带首次访问拿到的Cookies,这是最省心的方式。HTTP Cookie管理器会自动捕获响应头里的
Set-Cookie字段,并且在后续请求中自动带上这些Cookies,完全不用手动提取。 - 操作步骤:右键你的测试计划 → 添加 → 配置元件 → HTTP Cookie管理器,默认配置就足够用,不需要额外调整。
方案2:用正则表达式提取器手动提取特定Cookie值
如果需要单独提取某个具体的Cookie值(比如用于参数传递的token类Cookie),可以这么做:
- 在你的GET请求下方添加正则表达式提取器:右键GET请求 → 添加 → 后置处理器 → 正则表达式提取器。
- 关键配置项:
- 引用名称:自定义一个变量名,比如
target_cookie,后续可以通过${target_cookie}调用这个值。 - 响应字段:选择「响应头」,指定从响应头里提取内容。
- 正则表达式:根据你要提取的Cookie格式编写,比如要提取
SESSIONID=xyz789;中的值,正则可以写SESSIONID=(.*?);。 - 模板:填
$1$,表示取正则表达式中第一个分组的内容。 - 匹配数字:填
1,表示取第一个匹配到的结果。
- 引用名称:自定义一个变量名,比如
- 配置完成后运行测试,就能通过你定义的变量拿到目标Cookie值了。
若确实需要创建/修改user.properties的步骤
其实JMeter默认在安装目录的bin文件夹里就自带user.properties文件,你不需要从零创建,找到它的位置即可:
- Windows系统:一般路径是
C:\apache-jmeter-x.x.x\bin\user.properties(替换x.x.x为你的JMeter版本号)。 - macOS/Linux系统:路径通常是
/usr/local/apache-jmeter-x.x.x/bin/user.properties或者你解压JMeter后的bin目录下。
如果文件不小心丢失,手动创建的步骤如下:
- 打开任意文本编辑器(比如Notepad++、VS Code、系统自带的记事本),新建一个空白文档。
- 添加你需要的配置项,比如要开启Cookie日志记录,可以添加
jmeter.save.saveservice.cookies=true。 - 将文件保存为
user.properties,注意不要加.txt后缀,保存路径选JMeter安装目录的bin文件夹。 - 重启JMeter,新的配置就会生效。
内容的提问来源于stack exchange,提问作者UncountedBrute
相关产品推荐
相关产品推荐

