1.设置接口只运行一次
循环次数设置为2,运行结果可以看到登录与充值都运行了两次


实际的业务场景不可能每次充值都要登录一次,所以就需要把登录接口设置只访问一次,具体实现如下:
右击【线程组】-【添加】-【逻辑控制器】-【仅一次控制器】

然后把登录接口拖到【仅一次控制器下】,此时再运行,可以看到登录接口运行了一次,而充值接口运行了两次

扩展内容:
右击【线程组】-【添加】-【逻辑控制器】-【循环控制器】,循环次数设置为2时,此时运行结果是循环控制器设置的循环次数2*线程组中设置的循环次数2=4



2.设置跨线程传参及调用
我这里把登录接口设置到线程组1,提现接口设置到线程组2,如何跨线程进行传参及调用
具体步骤如下:
1.把提现需要用到的token及id的值,先提取出来,我这里用的json提取方式,具体设置步骤可以参考此文章Jmeter-提取器、CSV读取文件的设置_晒不黑的黑煤球的博客-优快云博客

2.把提出到的token与id设置为全局变量,这样线程组2中的接口才能使用
右击【HTTP请求】-【添加】-【后置处理】-【BeanShell后置处理程序】



多个变量之间可以加上分号隔开
3.最后一步就是把用到token与id的地方,用函数${__property()}或${__P()} 来获取到设置的全局变量来调用

可以看到运行结果成功了

本文介绍了如何在JMeter中设置接口只运行一次,利用仅一次控制器避免重复登录。此外,还详细阐述了跨线程传参及调用的方法,包括提取响应数据、设置全局变量以及在不同线程组间使用BeanShell后置处理器调用这些变量,确保正确执行接口间的依赖操作。
663





