JMeter-如何使后处理器可重用,并根据需要在测试片段之上使用它们

时间:2018-08-28 18:40:02

标签: jmeter

这是我的情况:

我为一个采样器创建了一个测试片段,该片段被用于不同jmx脚本中的许多线程组。有时我想使用很少的后处理器提取该采样器结果的几个值。

问题:

如何对这些后处理器进行分组并使其可重用?我不想包含在测试片段本身中,因为我不需要/不想每次都执行后处理器操作。

这是我尝试过的:

我能够将这些后处理器另存为单独的测试片段,并在需要执行采样器时将其包含在我的测试脚本中,紧随采样器之后。我可以将采样器结果保存到jmeter变量中,并在我的后处理器测试片段中使用它。

这是一个好方法吗?请引导我。

2 个答案:

答案 0 :(得分:1)

  • 让后处理器与所有其他采样器处于同一级别不是一个好主意,因为它们将在其scope中的每个采样器中执行
  • 每次将响应数据保存到变量中也是一种开销,因为根据您的问题,您需要值sometimes

我建议使用JSR223 Sampler复制以前的采样器响应数据,并将必要的后处理器作为子代应用到它。

复制先前采样器响应数据的相关代码将非常简单:

SampleResult.setResponseData(ctx.getPreviousResult().getResponseData())

位置:

查看Apache Groovy - Why and How You Should Use It文章,以了解有关JMeter概念中Groovy脚本的更多信息

JSR223采样器也可以另存为测试片段。

答案 1 :(得分:1)

在@Dmitri T答案中,您可以在JSR PostProcessor中将类似的代码保存在脚本文件中并重复使用

  

脚本文件包含要运行的脚本的文件,如果使用相对文件路径,则它将相对于系统属性“ user.dir”引用的目录

在多个后处理器中使用相同的脚本文件可重复使用: