【问题标题】:How to pass dynamic cookie in jmeter?如何在jmeter中传递动态cookie?
【发布时间】:2026-01-30 21:50:02
【问题描述】:

我在测试计划中添加了 HTTP Cookie 管理器和 HTTP 授权管理器。当我收到响应消息运行脚本时

响应码:401

响应消息:未经授权

{"message":"Access is Denied","severity":"danger"}

这是我的饼干

_ga=###; _gid=###; _gat=#;访问信息={###};用户信息={###}; 574ae166fc51fa5bdbd8beef725e77d7={###};会话=.###

但是当运行脚本时,只有部分会话是从我上面的 cookie 数据通过标头请求传递的。

我也尝试使用正则表达式,但没有得到响应。

谁能建议我如何以及在何处动态传递我的 cookie?

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    如果下一个请求没有您在上一个响应Set-Cookie header 中看到的所有 cookie,则很可能表明 cookie 有问题。

    您可以通过 enabling debug logging for the HTTP Cookie Manager 检查 JMeter 对 cookie 所做的确切操作,为此将下一行添加到 log4j2.xml 文件(位于 JMeter 安装的“bin”文件夹中:

    <Logger name="org.apache.jmeter.protocol.http.control.CookieManager" level="debug" /> 
    

    需要重新启动 JMeter 才能获取更改。


    其他尝试:

    1. 关闭 JMeter 内置的 cookie 检查。为此,将下一行添加到user.properties file

      CookieManager.check.cookies=false
      
    2. 使用“实施”下拉值,即尝试选择限制较少的实施,例如netscape

    【讨论】:

    • 我试过了,但它不起作用。在我的 Web 应用程序中,cookie 是使用 flax application 生成的。 cookie 在需要时通过请求动态生成。