loadrunner参数化总结

来源:互联网 发布:mac整理照片的软件 编辑:程序博客网 时间:2024/05/17 02:02

1.        select next row(下一值取值方式)

l        Sequential(顺序):Vuser按照顺序从数据表中取值,每次当Vuser访问数据表,都返回下一个可用的数据,如果没有足够的数据,VuGen将从数据表的第一行重新开始取值。这种方式强调虚拟用户的一致性,每个用户运行到该点取值是一致的

l        Random(随机)

每次Vuser访问数据表时都分配一个随机的值

l        Unique(唯一)

唯一的数,为每个Vuser的参数分配唯一的值。与sequential相比,Unique强调的是用户间的差异性,每个用户取到的参数都不一致

2.        Update value on(更新方式)

l        Each iteration:每次迭代都取一个新的值,如果在脚本的一次迭代中,该参数出现两次也只取同一个值

l        Each occurrence:每次遇到参数都取一个新值,如果在脚本的一次迭代中,该参数出现两次,那么两次都取不同的值

l        Once在一个Vuser中参数都取相同的值(不管几次迭代)

3.        组合取值说明表

 

参数取值和更新方式列表

  

update method
(更新方式)

数据分配方法

 

sequential(顺序)

random(随机)

unique(唯一)

 

Each iteration
(每次迭代)

对于每一次迭代,Vuser都从数据表中取下一个值

对于每一次迭代,Vuser都从数据表里取一个新的随机值

对于每一次迭代,Vuser都会从数据表里取下一个唯一值

  

Each occurrence
(
每次遇到)

即使在一次迭代中,每次遇到参数,Vuser都会从数据表中取下一个值

即使在一次迭代中,每次遇到参数,Vuser都会从数据表中取一个新的随机值

即使在一次迭代中,每次遇到参数,Vuser都会从数据表中取一个新的唯一值

  

once
(一次)

对于每个Vuser,第一次迭代分配的值和接下来的迭代取相同的值

对于每个Vuser,第一次迭代分配的随机值和接下来迭代取相同的值

对于每个Vuser,第一次迭代分配的唯一值和接下来的迭代取相同的值

  

 

4.        Unique参数取值说明

Select next row = unique需要选下面两个内容

l        When out of value(当数据表的值不够的时候所做操作)

Abort user(中止运行):停止运行

Continue with last value(取最后一个值):Vuser取最后一个值

Continue in a cyclic manner(循环取值):Vuser从属于他的数据表中的第一个取值开始循环取值

l        Allocate Vusers value in the Controller(为Vuser分配参数块)

Automatically allocate block size(自动分块):系统自动为参数分块大小

自动分块示意图:假设一个Vuser执行完迭代需要4个值

 

A1

A2

A3

A4

A5

A6

A7

A8

An

An+1

 

Vuser1

Vuser2

Vuser n

Vuser n+1

 

1)       会按照排队的方式分配参数

2)       块的大小为一个Vuser运行完毕所需要的参数

3)       Vuser分到的参数不够,将在自己分的块中进行取值:例如:Vuser n只分到两个参数,Vuser n会按照when out of value的方式取值,如果是Continue with last valueVuser n的参数取值是AnAn+1An+1An+1,如果选择的是Continue in a cyclic mannerVuser n的参数取值是AnAn+1AnAn+1(块内循环)

4)       Vuser n+1因为没有分到参数会报错

5)       所需参数总数 块大小* Vuser个数(块大小计算,Each iteration每次迭代)则=迭代次数,Each occurrence每次遇见)则=迭代次数*一次迭代出现次数)

 

Allocate ** values for each Vuser(分配**块给每个Vuser):手动分块

手动分块示意图:假设一个Vuser执行完迭代需要4个值,手动分块块大小为3

 

A1

A2

A3

A4

A5

A6

A7

A8

A9

Vuser1

Vuser2

Vuser3

 

1)       会按照分块的方式分参数

2)       块大小为设定大小

3)       Vuser分到的参数不够,将在自己分的块中进行取值:例如:因为每个Vuser需要四个参数,所以每个Vuser参数都不够,则Vuser2为例,如果选择的是Continue with last valueVuser 2的参数取值是A4A5A6A6,如果选择的是Continue in a cyclic mannerVuser 2的参数取值是A4A5A6A4(块内循环)

4)       所需参数总数手动分配块大小* Vuser个数

注:在controller设置duration的情况下,自动分块的分块方式有所变化,块大小=我们输入的参数总数/ Vuser的个数,其他处理方式和手动分配块大小一致


原创粉丝点击