不应该是家,窝更适合一点

Meter——HTTP COOKIE Manager(cookie管理器) 【zt】

上一篇 / 下一篇  2016-06-01 17:11:48 / 个人分类:Jmeter

现在对于JMeter来说,一个测试计划只能有一个cookie管理器。因为当多个magager存在时,JMeter目前还没有方法来指定使用那个manager。同时,一个cookie manager中的存储的cookie也不能被其他cookie manager所引用,所以同一个计划中不建议使用多个cookie manager

HTTP COOKIE Manager管理cookie有两种方法:
  1. 他可以像浏览器一样存储和发送cookie,如果你要发送一个带cookie的http请求,cookie manager会自动存储该请求的cookies,并且后面如果发送同源站点的http请求时,都可以用这个cookies。每个JMeter线程都有自己的“cookie存储区域”,
  所以当你测试一个使用cookie来管理session信息的web站点时,每个JMeter线程都有自己的session。
  注意:
以这种自动收集的方式收集到的cookie不会在cookie manager中进行展示,但是运行后,通过:查看结果树(监听器)可以查看到cookie信息。
 早期的JMeter版本(2.3.2或更早)对与cookie的管理是支持跨域的,也就是说不同域名的网站都可以使用cookie manager中 的cookie,2.3.2版本之后,这个就不可以了,必须同源,才能共用cookie,如果你想让JMeter的cookie manager支持跨域, 修改JMeter.property :
CookieManager.check.cookies=false

  接受到的cookie会被自动存储在线程变量中,但是从Jmeter2.3.2版本后,默认不再存储,如果你想要manager自动存储收集到 的cookie,你需要修改JMeter.property :
CookieManager.save.cookies=true
    存储的时候,cookie的key会以“COOKIE_”为前缀命名(默认情况),如果你想自定义这个前缀,
修改JMeter.property :
CookieManager.name.prefix= 
    这个配置如果未启用(也就是维持默认),我们可以通过一下方式获取到cookie的值:${COOKIE_name},其       中name为cookie的名称

   2.除了上面说的自动收集,我们还可以手动添加cookie,这里,笔者要给大家一个建议,尽量不要一个一个手动去填写,我们可 以结合firefox的插件firebug,直接将cookie导入,操作如下
  • 打开firebug,如图
JMeter——HTTP COOKIE Manager(cookie管理器) - 一切随缘 - 随缘
  点击红色框中的,下拉框中有个导出本站点的cookie,就可以将cookie信息保存为一个cookies.txt文件,接着打开jmeter的cookie manager:
JMeter——HTTP COOKIE Manager(cookie管理器) - 一切随缘 - 随缘
 载入刚才导出的cookies.txt文件即可。
各个参数说明:
名称 描述 是否必填
  Name 自定义该cookie的描述,例如:tuan.qq.com的cookie N
  Clear Cookies each Iteration 每次线程组运行前,都会清楚cookie,但是如果是手动添加的cookie,不会被清除 N
  Cookie Policy 选择cookie的管理策略,建议选择compatibility,兼容性强 
  User-Defined Cookies 用户自定义cookie 
  Add Button 。。。略过 

TAG: Cookie Jmeter cookie jmeter

 

评分:0

我来说两句

Open Toolbar