大话人生

  IT博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  299 随笔 :: 0 文章 :: 73 评论 :: 0 Trackbacks

LR在录制程序运行的过程中,VuGen(脚本生成器) 自动生成了包含录制过程中实际用到的数值的脚本,如果你企图在录制的脚本中使用不同的数值执行脚本的活动(如查询、提交等等),那么你必须用参数值取代录制的数值,这个过程叫做参数化。

以下为参数化过程:

LR学习笔记---参数设置 - 毛毛虫 - 想飞的梦想
 
参数化过程比较简单,参数化时复杂的是对参数属性的设置。主要是以下两个属性的组合。
select  next row 中有三个选项:  Sequential(顺序读取)、Random(随机读取)、Unique (唯一)
update the value 中也有三个选项:  Each Occurrence(每次遇到 )、  Each iteration(每次迭代  )、 Once(一直 )
这两个属性可以有九种组合方式,每种方式都不一样。接下来我们就用一个小实例来验证一下每种取值方式的效果。
录制一个lr自带实例WebTours的定单脚本。脚本中将出发城市与到达城市均参数化一下。参数化后还需做个关联(这个就重点说了)保证回放脚本成功。
设置10个用户并发持续加载的场景(参数文件中有10个数据),用默认设置均可。即每15秒加载两个用户,持续时间为5分钟,每30秒停止5个用户。
然后并发跑脚本。
以下为9种组合的测试结果:
(1)sequential       Once
十个用户 每个用户取值均一样,,每个用户的所有迭代中的取值均一样。
第一个用户执行了5次迭代,每次迭代均取得第一个参数。
第二个用户也执行了5次迭代,每次迭代均取的第一个参数。
第三个。。第四个。等等十个用户均一样。
 (2)unique      once
  十个用户 每个用户取值都唯一,每个用户的所有迭代中的取值均一样。
 第一个用户执行了5次迭代,每次迭代均取第一个参数;
 第二个用户执行了5次迭代,每次迭代均取第二个参数;
 第三个。。。第四个。。。依此类推。
 第十个用户执行了5次迭代,每次迭代均取第十个参数。
(3)Random  Once
十个用户,每个用户为随机取值,每个用户的所有迭代中的取值均一样。
第一个用户执行了5次迭代,每次迭代均取第三个参数;
第二个用户执行了5次迭代,每次迭代均取第七个参数;
第三个。。。第四个。。。依此类推十个用户随机取值。
(4)Sequential      Each iteration
 十个用户,每个用户每次迭代取一个新值。
第一个用户,第一迭代,取第一个参数 ;第二次迭代,取第二个参数 。。。。第十次迭代,取第十个参数。
第二个用户,第一次迭代,取第一个参数;第二次迭代,取第二个参数 。。。。第十次迭代,取第十个参数。
第三个。。第四个。。。依此类推。
(5)Unique     Each iteration
由于只设置了十个参数,运行过程中报参数不足的错误。
第一个用户,第一次迭代,取第一个参数;第二次迭代报错。。。第十次迭代报错。
第二个用户,第一次迭代,取第二个参数;第二次迭代报错。。。第十次迭代报错。
第三个。。第四个。。依此类推。
 
如果修改为100个参数则:
第一个用户,第一迭代,取第一个参数 ;第二次迭代,取第二个参数 。。。。第十次迭代,取第十个参数。
第二个用户,第一次迭代,取第十一个参数;第二次迭代,取第十二个参数 。。。。第十次迭代,取第二十个参数。
第三个。。第四个。。。依此类推。
(6)Random     Each Iteration
十个用户,每个用户每次迭代均随机去一个值。
第一个用户,第一迭代,取第一个参数 ;第二次迭代,取第四个参数 。。。。第十次迭代,取第七个参数。
第二个用户,第一次迭代,取第三个参数;第二次迭代,取第二个参数 。。。。第十次迭代,取第一个参数。
第三个。。第四个。。。依此类推。
(7)Sequential        Each ocurrance
十个用户,每个用户每次遇到均取一个值。
第一个用户,第一次迭代,每次遇到顺序取一个值;第二次迭代,按顺序接着取值。。。。。
第二个用户,第一次迭代,每次遇到顺序取一个值(从第一个参数开始);第二次迭代,按顺序接着取值。。。。。
依此类推。
(8) unique          Each occurrance
 十个用户,每个用户每次遇到均取一个不同的值。
 参数列表中要有足够的参数。
 
(9) Random       Each Occurrance
十个用户,每个用户每次遇到随机取一个值。
第一个用户,第一次迭代,每次遇到随机取一个值,第二次迭代,随机再取值。。。。。
第二个用户,第一次迭代,每次遇到随机取一个值,第二次迭代,随机再取值。。。。。
依此类推。
 
总之,主要区分 sequential 、Unique、Random 的区别。
sequential为顺序取,每个用户均从第一个参数开始取值。
Unique为唯一,每个用户取值均不同。
Random 为随机,每个用户均随机取值。
posted on 2013-11-28 19:54 大话人生 阅读(433) 评论(0)  编辑 收藏 引用 所属分类: 性能测试
只有注册用户登录后才能发表评论。