cookie管理器设置全局变量

jmeter中http cookie管理器里的值 怎么设置成全局变量跨线程使用呢?

在jmeter.properties文件中设置CookieManager.save.cookies=true,然后在线程组中添加HTTP Cookie管理器,运行测试计划后,HTTP Cookie管理器会自动存储这些cookie

  • 文章:jmeter使用http Cookie管理器传递登录时的Cookie值 中也许有你想要的答案,请看下吧
  • 除此之外, 这篇博客: 利用Blazemeter录制jmeter脚本另加上Http cookies管理器使用中的 怎么知道自己cookies: 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 使用谷歌浏览器的开发者工具:

    在这里可以查看自己cookies、

    然后填写到HTTP Cookies Mange上就可以了。

    ##有个坑的地方就是,不能勾选“安全”,勾了以后不成功。大家可以注意一下。

     

  • 您还可以看一下 陈槐老师的Jmeter高级性能测试实战课程中的 JMETER 如何管理HTTP Cookie Manager小节, 巩固相关知识点
  • 以下回答由chatgpt基于相关博客总结生成:

    根据参考资料和已有知识,以下是解决问题的步骤和说明:

    步骤1: 在JMeter的配置文件中设置Cookie管理器保存cookie信息的配置 - 打开apache-jmeter-5.2.1/bin/jmeter.properties文件 - 搜索并找到CookieManager.save.cookies字段,把它的值改为true,并去掉注释符号#,使其生效 - 保存并退出文件,重启JMeter

    步骤2: 检查cookie信息是否已自动存储 - 在测试计划中添加一个线程组,并添加一个HTTP Cookie管理器 - 运行测试计划,观察HTTP Cookie管理器是否自动保存了cookie信息 - 可以使用调试取样器查看自动存储的cookie值,或在请求中查看request body中的cookie值

    步骤3: 将cookie设置为全局变量 - 在BeanShell后置处理程序中,使用__setProperty()函数将COOKIE_XXXX设置为全局变量 - XXXX是cookie的名称,需要设置每个cookie的全局变量 - 例如,使用以下代码将名为z92_visitor的cookie设置为全局变量:

    __setProperty("COOKIE_z92_visitor", vars.get("COOKIE_z92_visitor"));
    

    步骤4: 获取并存储Cookie - 在HTTP Cookie管理器中,使用__P()函数获取全局变量Cookie,并将其加入到Cookie管理器中 - 确保名称和请求中的cookie名称保持一致 - 例如,使用以下代码获取并存储名为z92_visitor的全局变量Cookie:

    ${__setProperty(COOKIE_z92_visitor,${__P(COOKIE_z92_visitor,)})}
    

    步骤5: 在不同的线程中使用Cookie - 确保在需要使用Cookie的请求中添加HTTP Cookie管理器 - 在请求中,可以使用${COOKIE_z92_visitor}来引用全局变量Cookie的值

    以上是基于参考资料在JMeter中设置HTTP cookie管理器的值为全局变量以在不同线程中使用的解决方案。