JMeter:你如何运行不属于采样器的代码?

时间:2017-10-18 21:47:04

标签: jmeter

我想在开头设置变量时运行代码,但据我所知,运行代码的选项是:

  1. 采样器:出现在JMeter报告中并搞砸我的号码。
  2. 预处理器/后处理器/断言:必须附加到现有采样器。
  3. 计时器:这有时会起作用,但看起来如果树上的计时器比你的采样器更高,它们就会被忽略。
  4. 监听器:运行您的采样器(我希望此代码在其他所有操作之前运行)。
  5. 有没有办法在不修改报告或将其附加到采样器的情况下运行代码?

3 个答案:

答案 0 :(得分:2)

  1. Test Action采样器添加到测试计划中您要运行代码的位置
  2. JSR223 PreProcessor添加为“测试操作”采样器的子项
  3. 勾选Cache compiled script if available
  4. 将您的代码放入Script区域
  5. 这是你正在寻找的东西

答案 1 :(得分:1)

请参阅Execution order

  
      
  1. 配置元素
  2.   
  3. 预处理器
  4.   
  5. 计时器
  6.   
  7. 采样器......
  8.   

例如Configuration元素

  

“用户定义的变量”配置元素不同。它在测试开始时处理,无论它放在何处。

在其中,您可以执行JMeter functions,其中包含许多选项,以便从CSV中读取,执行常规或beanshell 代码 ...

答案 2 :(得分:0)

您可以将操作添加为采样器(无论是JSR223还是其他任何对象),然后添加一个PostProcessor,它将此采样器的结果标记为已忽略。可以使用带有普通脚本的JSR223 PostProcess来完成:

prev.setIgnore()

您还可以根据条件控制是否忽略此样本。