每个线程迭代重置COOKIE_ var

时间:2014-12-03 08:52:23

标签: testing jmeter beanshell

有没有办法在线程组中线程的每次迭代迭代中重置/清除COOKIE_变量?

“每次迭代清除Cookie”选项在HTTP Cookie管理器中设置。问题是当线程重新启动时COOKIE_vars不会被重置(但真正的cookie会这样做)。 (使用sample_variables选项进行日志记录时会看到这种情况。)

尝试过:

  • 使用用户定义的变量,但这似乎只在第一次迭代时运行
  • 使用带有vars.put("COOKIE_var", "null"); BeanShell Sampler ,除了你在日志中得到一个无用的额外样本,这是不可接受的
  • 使用具有相同代码的BeanShell前/后处理器不起作用,因为确切的第一个样本并不总是已知(用户可配置)

因此,如果有一种方法可以在没有生成样本日志条目的情况下执行某些代码,那么就可以解决它。但是没有发现任何东西只是运行一些代码,也没有找到任何方法来“取消”BeanShell Sampler中的样本,这样就不会记录它。

1 个答案:

答案 0 :(得分:0)

使用带有以下条件的空如果控制器有效(它会重置变量并在每次迭代时执行而不生成样本):

${__BeanShell(vars.remove("COOKIE_var"); "false";)}

Altho使用像这样的控制器来运行一些代码似乎有点难看。

"false"在那里返回一个不会生成JS或条件异常的值。