## jmeter While循环控制器多条件
测试场景:
当线上进行商品推广活动时,一般系统都会做相应限流。此时真实场景中同一用户如果首次创建订单失败一定再次尝试。对于此场景在进行性能测试时会模拟下单的重试操作。设定条件时,如果一次下单成功,直接退出当前线程(一般秒杀商品只允许一个用户购买一单),如果下单失败则重试,假如设定重试次数为3
whiler控制器设置条件如下:
rcode 为下单接口返回码提取值,返回0表示下单成功。__jm__While1__idx 为While控制器内置变量
###重点重点
重点是一定要保证rcode这个变量在进入While控制器一定是个非0的值。所以进入While控制器前必须对rcode进行初始化。此初始化点可以选在While紧临的上一个请求上,如果使用beanshell或者jsr223会对发压性能有一定影响。可以使用json提取器,提取一个不存的返回内容,使rcode使用默认值即可完成初始化,如下图: