JMETER 使用BeanShell 配合 if 控制器实现逻辑控制

业务场景

在登录后,我们根据登录的响应,判断是否执行下一步的操作。

实现步骤

1.在登录采样器树中增加BeanShell 监听器。

作用是在线程上下文变量中增加一个变量,表示登录是否成功。

beanshell 监听器的写法如下:

这个代码的作用是判断登录是否成功,如果成功那么就在变量中增加login的变量。

代码上下文的变量可以参考:

https://blog.csdn.net/hujyhfwfh2/article/details/80862134

2.增加 if 控制器

作用判断登录成功后,才执行发起流程的操作。

当选中红框时,可以使用 groovy 执行beanshell 脚本。

上面的代码的意思变量login 是否为true。

我们可以看到执行结果。

当红框不选中时,这个判断代码是 javascript 脚本。

脚本写法:

"${login}"=="true"

执行的效果是一样的。

ctx :上下文对象API

http://jmeter.apache.org/api/org/apache/jmeter/threads/JMeterContext.html

prev:是

SampleResult sampleResult=ctx.getPreviousResult() ;

对象的实例

vars 是

JMeterVariables vars=ctx.getVariables();

对象关联的变量

原文地址:https://www.cnblogs.com/yg_zhang/p/10964698.html