其实在Jmeter是不支持跨线程组传递参数的(官方设计就是这样哦),那么想要实现跨线程组传参(最常见的场景就是:setUp线程组中放置登录接口,在其他线程组中的接口需要使用登录接口返回的token),该怎么做呢?
可以借助内置函数__setProperty实现,那么__setProperty的作用以及具体用法是怎么样的呢?
一、作用
1、设置Jmeter属性值
疑问:设置Jmeter属性值和我跨线程组传递参数有什么关联呢?
答:因为Jmeter中,属性是全局生效的,可以动态设置,但是变量是每个线程独有的,所以通过设置属性可以实现跨线程组传参,而不是通过变量的方式。
二、Jmeter属性
Jmeter有很多自带的属性,可以在测试计划上右键 --> 添加 --> 非测试元件 --> 属性显示,查看Jmeter的属性
通过__setProperty设置的属性就能在这里查看啦
三、用法
可以借助函数助手查阅用法
注意:获取jmeter属性值,是通过内置的P函数获取的,用法:${__P(属性名,)}
四、实际例子
需求:提取setUp线程组中登录接口返回的cookie,设置成全局属性,其他线程组使用该cookie