Jmeter之随机变量元件与用户自定义变量元件区别及使用
用随机变量(random variable)与用户自定义变量(User defined variables)的区别:
随机变量:在同个线程或者不同线程时,每个次循环执行时值都会重新生成
用户自定义变量:在同个线程中,用户自定义变量只会引用一次,后面不管循环运行多少次,变量值都相同
接下来用一个场景阐释两种元件的区别。
场景:单线程,期望一直向服务发送请求,且每隔4次参数发生一次变化
尝试一下只用函数助手中的__RandomString函数
步骤:
1.添加线程组,路径为
2.添加循环控制器,循环次数勾选永远,路径为
3.在循环控制器中再嵌套一层,循环次数填4
4.在内存循环控制器中添加http取样器
5.配置http请求参数
6.__RandomString配置路径,函数助手->__RandomString
7.添加监听器--查看结果树后运行程序,查看结果
结果:你会发现,直接将__RandomString引用在请求中,每次执行时,参数值都不一样,未达到每隔4次参数发生一次变化的需求。
尝试一下引入用户自定义变量,将用户自定义变量放置在外层循环控制器中
1、添加用户自定义变量
2.配置用户自定义变量
3.重新配置http取样器
4.执行
结果:你会发现,直接加入用户自定义变量后,每次执行时,参数值都一样,未达到每隔4次参数发生一次变化的需求。
尝试一下引入随机变量,将随机变量放置在外层循环控制器中
1.添加随机变量
2.随机变量配置
3.重新配置http取样器后执行
结果:你会发现,使用随机变量后,达到每隔4次参数发生一次变化的需求。
不妨动手试试,随机变量与用户自定义变量的差别才会更深刻。