变量引用基本如下方式
在beanshell中用vars.get("var_name");
在其他图形化界面用${var_name}
一、User Defined Variables(用户定义的变量)
add--Config Element--User Defined Variables
用户自定义变量中的定义的所有参数的值在测试计划的执行过程中不能发生取值的改变,因此一般仅将测试计划中不需要随迭代发生改变的参数(只取一次值的参数)设置在此处。例如登录时的用户名、密码、分页尺寸、数据库名、数据库密码等(注意全局考虑问题,抽取公共变量)
二、 User parameters(用户参数)
add--pre processor--User parameter
与用户自定义变量不同的是,用户参数列表中的参数取值可以在测试计划执行过程中发生变化。
如图,username和password分别有两组不同的取值。通过界面右下方的四个按钮,可以向列表中增加参数,增加参数值,删除参数和删除参数值。
“每次迭代更新一次”选项控制参数取值的变化规则,如果选中该选项,则参数的值在每个迭代中保持不变,在新的迭代开始时取下一个值。如果取消该选项,则参数值在每个在其作用域内的sampler发出请求时取下一个可用值。
如果参数的取值范围很小,使用用户参数比较合适;如果参数的取值范围很大,建议使用csv data set config方法。
三、CSV Data Set Config
转自:javascript:void(0)
add--Config Element--CSV Data Set Config
- Allow Quoated data: 双引号相关,例:如果参数中需包含,或者”等,该项可以选择True,效果如下:
- Recycle on EOF: 设置为True后,允许循环取值
- Stop Thread EOF: 当Recycle on EOF为false并且Stop Thread EOF 为true,则读完csv文件中的记录后,停止运行,线程数及执行次数无效。
- Sharing Mode:共享模式:
All threads:所有线程,所有线程循环取值,线程1取第一行,线程二取下一行。
Current thread group:当前线程组,各个线程组分别循环取值。
Current thread:当前线程,该测试计划内的所有线程都取第一行。
这是预先定义的变量,我们还可以在sampler执行过程中保存数据库中数据、接口返回数据等,以后介绍。