Loadrunner 参数化设置中的Data Wizard
- 格式:doc
- 大小:638.50 KB
- 文档页数:10
LoadRunner连接数据库1.连接SqlServer新建参数--data wizard--选择第二项--创建一个ODBC的数据源---选择驱动(因为我们用sqlserver数据库所以我们选择sqlserver的驱动--输入数据源名称(自取)和数据库服务器的名称--用户权限验证(一般默认)--更改默认的数据库为(选择刚才创建的数据源要连接的数据库)--测试数据源--确定后回到SQL语句输入2.连接Orical新建参数--data wizard--选择第二项--创建一个ODBC的数据源---选择驱动(因为我们用Orical 数据库所以我们选择Orical的驱动)--填写Orical数据源驱动的配置信息(数据源名称(自取),TNS service name (LIUDEBAO),userid(使用这个数据库的用户名))--test connection (需要输入用户密码)--确定后再次连接--输入查询语句如果链接不成功,首先检查Orical是否运行正常,然后在检查数据串连接串等设置3.连接mysql(需网上下载mysql驱动安装,因为windows没有自带odbc数据源的mysql驱动)新建参数--data wizard--选择第二项--创建一个ODBC的数据源---选择驱动(因为我们用Mysql 数据库所以我们选择MYsql的驱动(自己已经安装))--)--填写mysql数据源驱动的配置信息(数据源名称(自取),server(Mysql服务器地址,可写IP,若本机可写localhost),用户名,密码,所用的数据库)--此页第二个选项卡(链接选项)写入端口号(Mysql的默认端口号是3306),其他保持默认--点击test测试--回到输入查询语句a.这里需要强调需要额外自己安装mysql驱动b.总是说找不到记录或查询出错,可能是记录之间有空格或逗号。
Load Runner 使用说明一、组件:(一) VuGen:用于捕获最终用户业务流程和创建怎动化性能测试脚本。
1. 录制脚本:(1) 集合点Rendezvous(2) 验证点Check Point:文本验证点Text Check、图片验证点Image Check(3) 事务Transaction:事务开始Start Transaction、事务结束End Transaction(4) 注释与消息Comment & Message:/***/2. 增强并编辑Vuser脚本(1) 参数化:在Select next now中的参数:Sequential顺序、Random随机、Unique唯一在Update value on 参数:Each iteration每次迭代、Each occurrence每次出现、Once 一次(2) 从数据库中导入数据3. 配置动行时设置Runtime settings(运行时设置)(1) Number of Iterations:迭代次数(2) 在Preferences中的Enable image and text check在脚本中添加验证点时必须选中。
4. 在独立模式下运行Vuser脚本5. 集成Vuser脚本(二) Controller:用于组织、驱动、管理和监控负载测试。
1. 创建方案(1) 创建手动方案(2) 创建百分比模式方案(3) 创建面向目标的方案2. 计划方案(1) 开始时间(2) 方案运行设置:加压Ramp Up、持续时间Duration、减压Ramp Dowm3. 运行方案4. 监视方案(1) RuntimeGraphs(运行时图)A. Running Vusers运行时图:Running正在运行的Vuser总数、Ready完成脚本初始化部分、即可以运行的Vuser数、Finished结束运行的Vuser数,包括通过的和失败的、Error执行时发生的错误VuserB. Transaction Graphs事务监视图:Trans Response Time事务响应时间、Trans/Sec(Passed)每秒事务数(通过)、Trans/Sec(Failed/Stopped)每秒事务数(失败、停止)、Total Trans/Sec(Passed)每秒事务总数(通过)。
一、参数化的方法选中需要参数化的数据方法一,右键---【Replace with a new parameter】方法二,菜单【insert】----【new Parameter…】Parameter Properties (参数属性对话框)----我们的参数化设置就通过这个对话框完成.二、参数化的方式:其实参数化得方式有很多种,这里简述几种比较常见人方式。
其实方式略有不同,但其结果都是将数据添加进来。
1、编辑数据点击Create Table 会出现表格,在表格,再次点击Edit with Notepad ,然后会打开一个记事本,我们可以对记事本进行添加数据2、添加dat数据文件点击File输入框后面的“Browse..”按钮,找到本地的txt数据文件,进行添加就可以了。
需要注意的是,文件里面的数据不要乱写,每条数据一行,不然会读取有误。
3、数据库添加数据在很多情况下,我添加的数据不是十条二十条,也不是一百两百,如果还通过上面的两种方式添加,我想会是一件非常纠结的事情。
所以我们可以通过数据库将数据导入。
你是否疑虑数据库的数据怎么弄,数据库的数据生成非常简单,可以写一段简单的代码生成,也可以通过数据库数据生成工具来完成点击Date Wizard 打开连接数据库向导。
通常不用这种方式,而是直接在数据库中把数据查询出来,然后放到参数化列表当中。
4、其他类型设置如果我们要参数化的不是一个文件,比如是特定的日期时间,可以从Parameter type列表中进行选择这里可以设置日期时间格式,循环迭代方式,不过除了file类型外,其他用的不多。
其他类型用法我也不是十分了解。
参数化之间的关联前面我们已经对用户名进行了参数化,或对密码进行了参数化,这样是不是脚本就能正常跑了,不好说。
因为用户名和密码不是一一对应关系,每次运行脚本时取的用户名和密码没有对应上的话肯定就会出问题。
假设,我们已经对用户名已经进行了参数化,参数名为【username】,下面设置密码参数化与用户名关联。
LoadRunner 参数化的功能详解参数化的定义:使用指定的数据源中的值来替换脚本录制生成的语句中的参数。
对Vuser脚本进行参数化的好处:1、减小脚本的大小2、提供了使用不同的脚本的值执行脚本的能力参数化涉及两个任务:1、用参数替换Vuser脚本的常量值2、为参数设置属性和数据源“Select next ro w”定义的是如何选择下一行数据。
该处有三个选项"Sequential","Random","Unique",Sequential:顺序地向Vuser分配数据。
Random:当测试开始运行时,“随机”方法为每个Vuser分配一个数据表中的随机值。
Unique:为每一个Vuser的参数分配一个唯一的顺序值。
在这种情况下必须确保表中的数据对所有的Vuser和它们的迭代来说是充足的。
如果拥有20个Vuser并且要进行5次迭代,则测试者的表格中必须至少包含100个数值。
“Update value on”定义的是什么时候更新数据值,备选项有每次迭代,每次出现和一次。
表LoadR unner参数更新方法和数据分配如果LoadRunner的函数中某个参数不能直接使用LoadRunner参数,那么可以通过lr_eval_string进行转换取到参数的值。
参数表中sel ect next row和upda te value on的设置LR的参数的取值,和select next row和update value on的设置都有密不可分的关系。
下表给出了select next row和update value on不同的设置,对于LR的参数取值的结果将不同,给出了详细的描述。
Loadrunner中参数的设置转载自51CMM做负载或者压力测试时,很多人选择使用了Loadrunner测试工具。
该工具的基本流程是先将用户的实际操作录制成脚本,然后产生数千个虚拟用户运行脚本(虚拟用户可以分布在局域网中不同的PC机上),最后生成相关的报告以及分析图。
LoadRunner设置检查点的几种方法介绍前段时间在群里跟大家讨论一个关于性能测试的问题,谈到如何评估测试结果,有一个朋友谈到规范问题,让我颇有感触,他说他们公司每次执行压力测试的时候,都要求脚本中必须有检查点存在,不然测试结果将不被认可,这是他们公司的规范。
其实,在做压力测试过程,我们很容易忽略很多东西,而且随着自身的技术演变,我们很容易去丢失掉一些很好的习惯,当我们再碰到这些问题的时候,我们才发现其实是我们太粗心大意了,所以说好的习惯要保持。
这次我刚好也要接手一些性能工作,因此就如何规范设置检查点来谈谈一些基本的流程和方法。
使用LoadRunner做压力测试,大致如下几个流程:1、明确测试目标2、录制测试脚本3、脚本优化、调试4、场景运行5、分析测试结果当然这里都是概况性的标题,但从这里我们可以明确的是测试脚本是整个压力测试过程中的重点步骤,如果测试脚本都不能确保正确与否,后面的测试过程就无从说起了。
很多时候我们把脚本调试就简单的认为是脚本回放没有错误就认为脚本是没有问题的,这当然不能这么肯定,脚本调试是一个非常严谨的过程,我大致归纳如下几步:1、明确每一行脚本的作用,也就是说每一行脚本执行的功能是什么;2、删减不需要的脚本语句,比如在录制过程由于LR默认设置导致录制之后出现很多冗余的脚本,这些个脚本对我们的测试过程没有用途的应该删除掉,至于哪些是冗余就要具体分析了,所以说脚本录制完之后要分析脚本运行的过程,方能理解脚本执行的用途,不然在后面施压时运行错误,就会开始到处找问题,而又找不出问题;3、查找存在的关联并进行相关设置4、设置检查点,设置检查点的目的就是为了验证页面每次运行之后是否正确,设置检查点的过程总要通过不能的回放来进行验证检查点设置是否正确。
5、通过测试目标明确脚本执行的目标事务,并添加事务;6、对需要进行并打操作的功能设置集合点7、根据实际情况设置ThinkTime8、在以上所有脚本调试步骤完成之后,设置迭代次数,通过在Vuser中设置多次迭代来验证脚本在多次循环运行时是否存在错误注意:在Vuser中运行和回放脚本的过程,要密切关注replay log,也就是回放日志,很多问题通常都暴露在回放日志中,只不过我们没有认真去检查,所以没发觉。
loadrunner 参数化取值方式(原创版)目录1.概述2.LoadRunner 的基本概念3.LoadRunner 参数化取值的方式4.结论正文1.概述LoadRunner 是一种用于测试应用程序性能的负载测试工具。
它可以模拟大量用户同时访问应用程序,以评估其性能和稳定性。
在 LoadRunner 中,参数化是测试脚本中的一个重要部分,它可以帮助测试人员更轻松地管理和调整测试数据。
2.LoadRunner 的基本概念在 LoadRunner 中,参数化是指将测试脚本中的某些值替换为实际运行时获取的值。
这些值可以是数据库中的记录、文件中的数据或其他来源的值。
通过参数化,测试人员可以轻松地为测试脚本设置不同的输入数据,以模拟不同的用户操作和场景。
3.LoadRunner 参数化取值的方式LoadRunner 提供了多种参数化取值的方式,包括:(1) 直接参数化:在测试脚本中直接指定参数的取值。
例如,测试脚本中可以通过`lr_param_string`函数设置一个字符串参数的值。
(2) 从文件中读取参数:测试脚本可以从文件中读取参数的取值。
例如,可以使用`lr_load_string_file`函数从文件中读取字符串参数的值。
(3) 从数据库中获取参数:测试脚本可以从数据库中获取参数的取值。
例如,可以使用`lr_get_result_set`函数从数据库中获取记录集,并将其作为参数传递给测试脚本。
(4) 使用随机数生成器:测试脚本可以使用 LoadRunner 内置的随机数生成器生成随机参数值。
例如,可以使用`lr_random_number`函数生成一个随机数。
(5) 使用 Excel 文件:测试脚本可以从 Excel 文件中读取参数的取值。
例如,可以使用`lr_load_excel_file`函数从 Excel 文件中读取数据。
4.结论LoadRunner 提供了多种参数化取值的方式,测试人员可以根据实际需求选择合适的方式为测试脚本设置参数值。
Loadrunner日志参数的设置与使用一、Run-Time Setting日志参数的设置在loadrunner的vuser菜单下的Run-Time Setting的General的LOG选项中可以对在执行脚本时Loadrunner对日志的操作行为进行定义,下面我们在逐一介绍:1、Enable logging启用日志记录如果选中该选项Loadrunner在执行脚本时,进行日志的记录,否则不记录日志2、Send messages only when an error occurs 仅在出错时发送消息也称为JIT (实时)消息传递,仅当错误发生时才写入日志,选择该选项后则可以设置高级选项,指明日志缓存的大小,loadrunner默认的日志到小为1k3、Always send messages始终发送消息4、Standard log标准日志:创建在脚本执行期间发送的函数和消息的标准日志,供调试时使用。
对于大型负载测试场景、优化会话或配置文件禁用此选项。
如果日志记录级别设置为“标准”,当把脚本添加到场景、会话步骤或配置文件中时,日志记录模式将被自动设置为“Send messages only when an error occurs”。
但是,如果日志记录模式被禁用或者设置为“扩展”,则将脚本添加到场景、会话步骤或配置文件中将不会影响其日志记录设置。
5、Extended log-----Parameter substitution参数替换:选择此选项可以记录指定给脚本的所有参数及其相应的值当脚本进行参数化、插入事务、关联等优化后,在执行脚本过程中,参数化的值、事务所耗时间、关联函数取出的变量值均会在日志中输出,这个选项对调试脚本查看参数化取值、关联取值是否正确有着重要的作用6、Extended log-----Data returned by server选择此选项可以记录服务器返回的所有数据。
Loadrunner会将所有对服务器发出请求后的response情况记录在日志中,从这个日志中可以查看到服务器对请求的回应是否正确,在使用关联取值时往往需要到该日志中查看需要关联的值,从而确认所取数据左右边界。
LoadRunner参数化设置:数据分配与取值⽅式参数化设置中有九种取值⽅式:(以⽤户名参数user为例,其数据参数列表为:jojo、201401、201402、201403、201405、201406、201407、201408、201409,迭代次数设置为10次) 1、Sequential+Each Iteration 脚本会执⾏10次,每次迭代会按数据列表顺序取值,每⼀次迭代中出现的参数user的值是当前第⼀次参数替换的值。
第1次迭代均为jojo,以此类推。
2、Sequential+Each Occurrence 脚本执⾏10次,每次迭代中出现参数user,顺序取值⼀次,第1次迭代中出现3次user,则user取值为jojo、201401、201402,等到取值到201409,下次会从第⼀个数顺序取值。
3、Sequential+Once 脚本执⾏10次,user只取值⼀次,每次出现的user替换参数值都是jojo。
4、Random+Each Iteration 脚本执⾏10次,数据表中的数据随机取,⽐如第⼀次迭代取值201405,则这次迭代中出现参数user地⽅则⽤201405替代。
5、Random+Each Occurrence 脚本执⾏10次,数据表中的数据随机取,迭代过程中只要出现参数user的地⽅就随机取值⼀次。
第1次迭代出现3次user,则随机数为201407、jojo、201403。
6、Random+Once 脚本执⾏10,数据表中数据随机取值,参数user只取值⼀次,10次迭代过程中出现参数user的地⽅都是⽤随机取值(⽐如201406)替代。
7、Unique+Each Iteration 每个⽤户对应⼀次数据,当迭代次数超过⽤户数据量,根据设置情况处理情况,如下图所⽰: 每次迭代出现的参数user⽤当前取值替代。
8、Unique+Each Occurrence 当前有9条数据,没出现⼀次参数user,只能⽤⼀个数值替代,9条数据取完之后根据设置超出值处理。
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十个用户,每个用户为随机取值,每个用户的所有迭代中的取值均一样。
Loadrunner 参数化设置中的Data Wizard,提供从ODBC连接获得并转化成参数的手段。
具体设置如下:
开始—程序--管理工具—数据源(ODBC)--系统DNS—添加,添加页面如下图所示:
ODBC提供了常见的各种数据库链接,唯独没有mysql,在mysql官网下载直接安装就可以了。
这里添加mysql数据库为例:点击完成后,弹出的页面如下图所示:
设置如下:
点击测试成功,最后点击OK按钮。
现在开始在loadrunner中设置参数化(数据来源于数据库):点击HP Virtual User Generator—Vuser—parameter List
新建参数后,点击“Data Wizard”
设置成自定义的sql语句查询,点击下一步:
点击finish,如下图所示,参数化记录就从数据库里边导出来了:
备注:使用第二种方法“使用微软查询器查询”:
点击next
点击完成:
点击确定
OK。