loadrunner参数化总结

上一篇 / 下一篇  2009-02-27 13:31:24 / 个人分类:性能测试相关

 

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的个数,其他处理方式和手动分配块大小一致


TAG:

引用 删除 yooyooo   /   2011-04-26 10:27:17
很详细,对我非常有用
引用 删除 yooyooo   /   2011-04-26 10:26:04
5
朵朵的个人空间 引用 删除 鱼鳞   /   2011-03-15 13:29:57
5
cuckoo的个人空间 引用 删除 ttkk   /   2010-06-02 13:33:29
学习了,谢谢
cuckoo的个人空间 引用 删除 ttkk   /   2010-06-02 13:33:15
5
乐呵呵测试天地 引用 删除 navy2008   /   2009-08-26 12:02:27
不错,学习了!
 

评分:0

我来说两句

日历

« 2024-04-30  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 24715
  • 日志数: 25
  • 建立时间: 2008-07-31
  • 更新时间: 2009-12-23

RSS订阅

Open Toolbar