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

以下为参数化过程:

 
 
在编写好的脚本里面,选中要替换的字段,右键-替换为参数
 
 
 
新建参数后,要 创建表。才能编辑,设置相关属性
 
 
 
 
参数化过程比较简单,参数化时复杂的是对参数属性的设置。主要是以下两个属性的组合。
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 为随机,每个用户均随机取值。
 
 
当选中下一行选中 唯一,更新值的时间选择每次发生、每次迭代时,LR还需你设置超出时怎么处理。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

LR loadrunner参数化-笔记的更多相关文章

  1. Loadrunner参数化连接oracle、mysql数据源报错及解决办法

    Loadrunner参数化连接oracle.mysql数据源报错及解决办法 (本人系统是Win7 64,  两位小伙伴因为是默认安装lr,安装在 最终参数化的时候,出现连接字符串无法自动加载出来: 最 ...

  2. LoadRunner学习笔记

    什么是性能测试: 简单说,功能测试是软件是否能用,性能测试是看软件好不好用: 性能测试的含义,大体来讲就是通过自动化的手段,模拟生产运行的业务压力或者相应的场景,来测试协同系统是否满足生产需要. 性能 ...

  3. LoadRunner 参数化之 连接数据库进行参数化

    LoadRunner 参数化之 连接数据库进行参数化 Loadrunner(简称“LR”)对性能测试的脚本进行参数化时,由于数据量偏大,大家往往都会把数据录入到数据库表里,然后关联到LR,本文将详细介 ...

  4. 软件测试之loadrunner学习笔记-02集合点

    loadrunner学习笔记-02集合点 集合点函数可以帮助我们生成有效可控的并发操作.虽然在Controller中多用户负载的Vuser是一起开始运行脚本的,但是由于计算机的串行处理机制,脚本的运行 ...

  5. 软件测试之loadrunner学习笔记-01事务

    loadrunner学习笔记-01事务<转载至网络> 事务又称为Transaction,事务是一个点为了衡量某个action的性能,需要在开始和结束位置插入一个范围,定义这样一个事务. 作 ...

  6. LoadRunner参数化MySQL

    准备:安装[msql-ODBC驱动] 一.配置数据源 1.Win7,打开控制面板-系统和安全-管理工具,点击“数据源(ODBC)”. 打开数据源(ODBC),在用户DSN选项卡中点击“添加”按钮,弹出 ...

  7. [Loadrunner参数化]一个文件输两列参数的取值

    关于LoadRunner参数化的内容,在脚本开发中属于非常重要的一个知识点.关于这部分知识,在书上和网上到处都能找到,本篇只讲一种特殊情况:一个参数化文件为File类型,有多列值,如何进行参数化取值. ...

  8. LoadRunner参数化&关联

    我们用 HTTP 协议做脚本,要注意的是,不同协议的函数是不一样的,假如换 websocket 协议,关联函数就要用其他的 参数化 原理 1.什么叫参数化 把脚本内一个写死的值,去一个数组内取值,进行 ...

  9. Loadrunner参数化如何在记事本中将参数值显示超过100个参数值

    Loadrunner参数化如何在记事本中将参数值显示超过100个参数值 1.loadrunner的参数值没有最大的限度, 可以修改C:\Program Files\HP\LoadRunner\conf ...

随机推荐

  1. python第十七天-----Django初体验

    Django是一个MTV框架 M:models(数据库) T:templates(放置html模版) V:views(处理用户请求) 那么传说中的MVC框架又是什么呢? M:models(数据库) V ...

  2. as3自定义事件

    package EventPackage { import flash.events.Event; /** * * @author tqr <br /> * 创建时间:2015-2-6 下 ...

  3. 【译】RabbitMQ:远程过程调用(RPC)

    在教程二中,我们学习了如何使用工作队列在多个工作线程中分发耗时的任务.但如果我们需要去执行远程机器上的方法并且等待结果会怎么样呢?那又是另外一回事了.这种模式通常被称为远程过程调用(RPC). 本教程 ...

  4. [转载]赖勇浩:推荐《Linux 多线程服务器端编程》

    推荐<Linux 多线程服务器端编程> 赖勇浩(http://laiyonghao.com) 最近,有一位朋友因为工作需要,需要从网游的客户端编程转向服务器端编程,找我推荐一本书.我推荐了 ...

  5. 对 web.config 节点信息进行加密

    记录一下,免得以后再网上找 项目中,数据库访问链接字符串配置在web.config中,明文的,应客户需求需改成密文,so,需要加密. 一开始想的是需要重写configuration什么什么的,最后发现 ...

  6. updateEasyuiTab

    //tabContainer:easyui-tabs或者id,title名称 this.updateEasyuiTab = function (tabContainer, outTitle, outU ...

  7. 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案

    方案特点: 在网页程序或Java程序中调用接口实现短信猫收发短信的解决方案,简化软件开发流程,减少各应用系统相同模块的重复开发工作,提高系统稳定性和可靠性. 基于HTTP协议的开发接口 使用特点在网页 ...

  8. 解决Nginx不支持pathinfo的问题

    server { listen 80; server_name www.zq27.cc zq27.cc; root /data/wwwroot/www.zq27.cc/; access_log off ...

  9. css 3 动画

    1.transition,其作用是:平滑的改变CSS的值.无论是点击事件,焦点事件,还是鼠标hover,只要值改变了,就是平滑的,就是动画. transition 属性介绍: transition-p ...

  10. CAD 二次开发--属性块

    1.属性块的定义 属性块是有构成的实体和附加信息(属性)组成的,属性块中块的定义与简单块中块的定义一样,而属性的定义主要是通过属性的AttributeDefinition类的有关属性和函数来实现的.具 ...