HTTP cookie保持登录

1

HTTP Cookie 管理器的第一个功能: 可以自动存储cookie
它像网络浏览器一样存储和发送cookies。如果您添加了某个网站的登录请求,并且响应中包含了cookie,cookie管理器会自动存储该cookie,并将其用于该网站的所有请求。
每个JMeter线程(虚拟并发用户)都有自己的“cookie存储区”。因此,如果多个并发用户,每个用户下请求的cookie相同。
自动存储的Cookie不会显示在HTTP Cookie管理器上,但可以在监听器-察看结果树中查看cookie信息。

HTTP Cookie管理器的第二个功能:可以手动将cookie添加到cookie管理器。
手动添加的cookie,所有JMeter线程(并发用户)都将使用该cookie。
这样的cookie创建时的过期时间很长。
Cookie名称必须是唯一的—如果第二个cookie定义为相同的名称,它将替换第一个cookie。

 

多用户并发下,HTTP Cookie管理器,自动存储(未修改)和手动填写Cookie的区别

多用户并发,设置线程数为2;
使用CSV Data Set Config参数化账户信息;
自动存储cookie
1.添加HTTP Cookie管理器,不做任何修改;
2.察看结果树中查看cookie信息,发现不同用户使用不同的cookie。

表格察看结果,可以根据Thread Name查看jmeter运行的线程组总数,某个线程组下的第几个用户;
如下图,jira线程组设置1个并发用户,迭代3次;
并发OPMS设置2个并发用户,迭代3次;
表格察看结果-Thread Name中jira1 -1代表第1个线程组中的第1个用户;并发OPMS 2-1代表第2个线程组中的第1个用户;

多用户手动填写cookie(非参数化)
1.添加HTTP Cookie管理器,手动填写cookie;
2.察看结果树中查看cookie信息,发现所有用户使用相同的cookie,即使有登录。

 

需要登录权限的接口,可以使用HTTP Cookie管理器保持登录;
方式1.可以添加登录请求,使用HTTP Cookie管理器自动存储cookie;
方式2.可以不添加登录请求,手动添加HTTP Cookie管理器中的cookie信息;
1个线程(用户),HTTP Cookie管理器保持登录的2种方式,基本没有区别;
多个线程(用户),手动添加HTTP Cookie管理器的值,相当于单用户;
多个线程(用户),参数化HTTP Cookie管理器的值,相当于多用户;
多个线程(用户),HTTP Cookie管理器自动存储cookie,相当于多用户;
掌握了HTTP Cookie管理器使用,处理需要登录权限的请求就可以搞定了。

 

 

使用HTTP Header Manager把cookie,键、值填写进去;

 

3.两个请求,不同cookie,期望:几乎同时发起请求,可以加个简单控制器, 把cookie和请求区分一下,再通过表格查看结果,看请求间隔;

 

 

  

posted on 2021-01-25 22:20  星空6  阅读(332)  评论(0编辑  收藏  举报

导航