处理HTTP cookie以模拟类似浏览器的行为

时间:2018-02-22 13:33:36

标签: http cookies jmeter

有一个站点接受来自同一用户的登录,直到重新启动浏览器。我尝试使用JMeterHTTP Cookie Manager中模拟此问题。我定义了cookie,在所有登录中使用它们,但似乎它没有使用它们。成功登录站点后,只允许同一用户登录,直到浏览器关闭,但我也可以在同一JMeter测试执行中与其他用户一起登录。我使用标准Cookie Policy

2 个答案:

答案 0 :(得分:1)

网站可能根本不使用cookie来跟踪登录,而是使用"浏览器会话存储"。 (请参阅https://developer.mozilla.org/en-US/docs/Web/API/Window/sessionStorage)您看到的Cookie可能会被其他方/来源添加,例如Google Analytics等。

答案 1 :(得分:1)

您不需要手动定义Cookie,JMeter的Cookie管理器自动管理Cookie

根据documentation

  

Cookie Manager元素有两个功能:   首先,它就像网络浏览器一样存储和发送cookie 。如果您有HTTP请求并且响应包含cookie,则Cookie管理器会自动存储该cookie,并将其用于将来对该特定网站的所有请求。每个JMeter线程都有自己的" cookie存储区域"。因此,如果您正在测试使用cookie存储会话信息的网站,则每个JMeter线程都将拥有自己的会话。请注意,此类Cookie不会显示在Cookie管理器显示屏上,但可以使用“查看结果树监听器”查看它们。

如果你需要模仿"退出"你可以勾选Clear Cookies each Iteration框,每个Thread Group循环(迭代)将模拟"清理"登录。

有关HTTP Cookie管理器使用和故障排除的详细信息,请参阅HTTP Cookie Manager Advanced Usage - 指南。