JMeter-每次新测试都不会清除Cookie

时间:2018-10-06 13:08:10

标签: cookies jmeter

我正在Jmeter中进行测试,遇到了看似微不足道的问题,但我找不到解决该问题的方法。

每次测试运行时我都需要开始一个新的会话(我在GUI中进行构建)。我认为在线程组中设置HTTP cookie管理器并选中“每次迭代都清除cookie”设置会清除每次测试的新运行中的cookie。

但是,它似乎不起作用-当第二次运行测试时,先前运行中启动的用户会话仍然存在。

事实上,我现在遇到494服务器错误(Cookie太大),因为每次测试运行时Cookie的大小都会累积。

是否有关于每次进行新测试时如何清除Cookie的想法?

2 个答案:

答案 0 :(得分:0)

我怀疑这是一个JMeter问题,很可能是您通过受测试系统的Set-Cookie标头收到了不正确的cookie。

您可以通过enabling extra logging for JMeter's HTTP Cookie manager来解决此问题,可以通过在 log4j2.xml 文件(位于JMeter安装目录的“ bin”文件夹中)中添加下一行来完成 >

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

需要重启JMeter来获取更改


另外请注意,您可以在脚本的任意位置手动删除所有存储的cookie

  1. JSR223 PreProcessor添加为HTTP请求采样器的子项
  2. 将以下代码放入“脚本”区域:

    sampler.getCookieManager().clear() 
    

答案 1 :(得分:0)

根据您的评论,问题与环境有关,与JMeter无关。

由于某些无限重定向或类似的环境问题,我们堆积的Cookie可能最多。

如果您遇到Cookie管理器的任何问题,请参阅reference documentation