已知 Jmeter 中的属性是全局的,而变量是独属于每个线程的,无法直接用于其他线程组,是否可通过变量->属性的转变来实现变量的 “全局”
A 线程组:请求组件 +Json 提取器 +BeanShell 后置处理器
B 线程组:请求组件
首先通过 Json 提取对 A 线程组内 HTTP 请求后响应进行提取
配置 BeanShell 后置处理器将 Json 提取器结果由局部变量转变为公共属性,
在测试计划》用户定义的变量内存储此公共属性,并将其转为全局变量
注:变量类引用需使用 ${name}格式,属性类引用直接使用名称即可
可添加 Debug 调试取样器查看提取的 Jmeter 属性/Jmeter 变量
最后即可在所有线程组内直接引用存储的全局变量了
取样器结果
除上述方法外还可通过将响应保存至文件来实现跨线程传递,但相较而言存在文件依赖,以简述记录:
A 线程组将响应保存至文件,B 线程组通过文件参数化 + 提取器来获取变量信息