(十八)除File外的参数化类型

之前的File参数类型是支持用户手写的,其他的参数类型不支持手写参数值。
一、Data/Time
①若要创建新格式,则先编辑,后Add format
②Offset:
在Sample中显示的是当前某种格式的日期/时间,但有时我们并不需要当前的时间,作为参数值,这里就可以设置提前、延后、只有工作日时间。
Offset parameter x days and xx:xx:xx
Working days onl
Prior to current

二、Group Name
要放到控制台上。
举例:%06s:组名最少6位,若不够则在组名前面补0
三、iteration number
应用场景一:如果调试脚本时,脚本中的参数在每次迭代时都不能相同(只要不同即可,没有其他的要求),则使用该类型比较合适。若用file,还得用Excel或者notepad写一个文件,比较麻烦。
四、load generator
五、Random Number
min: max:
六、Unique Number
类似于File中的选值方式unique
需求:手机号138、139号段,1000用户并发测试,测试过程中要求手机号不能重复出现,测试时间为1个小时。已知:单用户在一个小时的运行时间内循环次数为457次
分析:①如果不想使用file类型的唯一取值方法,可以使用unique number类型。
②如果单用户运行一个小时后循环次数为n,则1000用户中每个用户循环时间小于n.(因为虚拟用户数多,压力大,响应时间长)
步骤:
①脚本:手机号参数化类型为unique,start 1 Block size per VU:500(因为单用户在1小时循环次数为457,所以当并发操作时,并不会超过这个数,设置500是安全的)
②controller:根据并发测试设置即可(设置每个用户的迭代次数为457)。

  • 这个在因为没有实际脚本,若只是简单的输出虚拟用户名和手机号码(以上面参数化形式),很可能会报错(不是事务错误)。因为在各个计算机在1小时很有可能迭代次数超过457。能够将此场景设置出来,能运行即可。(若出现error,error是没有一个用户块中数据不够,它默认使用最后一个数据,程序依然能够运行下去)
  • 这样的测试可以做多少次?
    若虚拟用户块设为500,有1000个虚拟用户,那么需要500000个数据。
    138号码后面还有8位,所以可能组合成10^8次个号码。
    10^8/500000=200次。

七、Vuser ID
可以用来区分不同的虚拟用户,在控制台有效

参数池应用:
1、lr自带的tours项目,购买机票脚本中,用户名和密码分别做参数化,用户名aa1、aa2……..aa30,共三个虚拟用户,迭代两次要求
1)登录过程在init找那个,参数池的策略:顺序+每次迭代、唯一+每次迭代
2)登录过程在action中,参数池策略:顺序+每次迭代、唯一+每次迭代
结果要说明:aa1订票6张 ,原因是

类似于File中引用一张多列表格的某列的操作

猜你喜欢

转载自blog.csdn.net/jiangshangchunjiezi/article/details/81065830