jmeter - 如果 Controller 与预处理器一起使用

标签 jmeter

简单 Controller 中,我放置了JDBC预处理器If Controller 以用于If Controller > 应该使用预处理器的结果。由于元素的优先级, Controller 在预处理器之前进行解释,并且无法计算异常值。

如何强制预处理器先于 Controller ?

换句话说,我如何根据动态前提条件运行或跳过示例?

谢谢!

最佳答案

我找到了原因和解决方案。预处理器属于采样器。但是(这没有描述)他们仅在采样器之前直接进行评估。评估后,其他采样器和 Controller 可以使用预处理器的结果。

就我而言,我首先使用预处理器,然后使用带有子采样器的 Controller 。在这种情况下,预处理器没有在适当的时间进行评估,因为 Controller 之前没有采样器:

1. PreProcessor
2. Controller (can't use the PreProcessor's result)
  2.1. Sampler

解决方案

如果任何采样器位于 Controller 之前,则预处理器将在 Controller 之前被评估。预处理器和 Controller 之间必须有一个采样器(例如测试操作、调试采样器或任何“不执行任何操作”的采样器)。在这种情况下,运行顺序是预期的:

1. PreProcessor
2. Sampler (can use the PreProcessor's result)
3. Controller (can use the PreProcessor's result)

关于jmeter - 如果 Controller 与预处理器一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13379518/

相关文章:

jmeter - 运行 Jmeter 给出 'findstr' 未被识别为内部或外部命令

java - jMeter 在扫描仪读取时挂起

testing - 如何在 jmeter 中为 PUT 调用传递 json 格式的正则表达式提取值?

testing - 50 个用户/线程的登录功能并发测试不起作用

jmeter - 在 JMeter 中使用 UUID 发送数据

java - JVM 应该已经退出但没有

groovy - 在 JMeter 中增加用户定义的变量

Jmeter 5.4.3 中 HTML 报告生成错误

JMeter - 使用另一个变量计算变量

jmeter - jmeter函数FileToString(path)会采用动态值吗