LR脚本优化2

上一篇 / 下一篇  2013-11-13 11:50:53 / 个人分类:loadrunner

4 参数化

1、参数化的步骤

确定需要参数化的内容→选中需要参数化的内容→使用右键菜单中的Replace with a Parameter将选中的内容替换为参数→Parameter List中设置参数值和参数更新方式→通过回放后的日志验证参数取值。

2Parameter List界面介绍

Parameter type:表示参数类型,当使用File参数类型时,会出现File选项。

Edit with Notepad:使用记事本打开参数文件。

Data Wizard:通过数据向导从ODBC导入数据。

File format:表示文件格式,Column列的格式包括Comma(逗号分隔符)、Tab(制表位分隔符)、Space(空格分隔符),First data设置行的记录是从第几行开始的。

3VuGen中的参数

Select next row + Update value on的组合方式:

Sequential+Each iteration 按迭代次数顺序取值。

Sequential+Each occurrence按出现的次数顺序取值。

Sequential+Once按第一次取到的值进行参数

Random+Each iteration 按迭代次数随机取值

Random+Each occurrence按出现的次数随机取值

Random+Once按第一次取到的值进行参数

Unique+Each iteration+Abort Vuser按迭代次数取唯一值,当参数取值超过参数表记录的条数时,忽略当前虚拟用户

Unique+Each iteration+Continue in a cyclic manner按迭代次数取唯一值,当参数取值超过参数表记录的条数时,使用循环的方式取值

Unique+Each iteration+Continue with last value按迭代次数取唯一值,当参数取值超过参数表记录的条数时,使用参数表中的最后一个值

Unique+Each occurrence+Abort Vuser按出现次数取唯一值,当参数取值超过参数表记录的条数时,忽略当前虚拟用户

Unique+Each occurrence+Continue in a cyclic manner按出现次数取唯一值,当参数取值超过参数表记录的条数时,使用循环的方式取值

Unique+Each occurrence+Continue with last value按出现次数取唯一值,当参数取值超过参数表记录的条数时,使用参数表中的最后一个值

Unique+Once按第一次取到的值进行参数 

When out of value的组合方式:

Abort Vuser:当参数取值超出参数表记录的条数时,忽略当前虚拟用户。

Continue in a cyclic manner:当场参数取值超出参数表记录时,使用循环的方式取值。

Continue with last value:当场参数取值超出参数表记录时,使用参数表中的最后一个值。

4、参数类型

BPT:该参数类型是与QCALM产品中的BPT模块对应的。

Custom:提供了一个自定义的参数类型,只需要填写参数值即可使用。

Data/Time:提供了获得当前时间的参数化做法,Offset parameter可以指定偏移的日期和时间,Working days only(获得的日期为周一至周五)、Prior to current(是否生成过去的时间)。

Group Name:场景中对Group Name进行参数化。

Iteration Number:用于获得当前所在的迭代编号。

Load Generator Name:可以获得脚本运行时所在服务器的名称。

Random Number:可以设置最小值和最大值,实现范围内随机数的生成。

Table:该参数类型是对一个File类型的增强版,如果参数化的对象中同时存在逗号、制表符、空格时,只有使用Table参数类型才能解决这个问题。

Unique Number:获得一个唯一的数据。

5 关联

关联有3中方式,自动关联、手动关联、一边录制一边关联。

1、自动关联

通过录制和回放时的服务器返回值比较来确定需要关联的内容,然后帮助生成对应的关联函数,常用在非常标准的动态数据处理中。

自动关联需单击Vuser菜单中的Scan Script. for Correlations

注意:使用自动关联前,脚本必须要先运行一次。

2、手动关联

关联应用的最有效的手段,通过手动关联函数web_reg_save_param_ex()将想要的字符串保存到一个参数中,再将关联的地方替换为该参数。

3、一边录制一边关联

前提条件:需打开录制选项中的Correlation

选择Enable correlation during recording启用自动录制关联,定义新的应用,定义左右边界值后,重新录制一次应用,录制结束,脚本会自动生成关联函数。

6 检查点

1、检查点的设置

打开Insert菜单下的New step选项,找到web_reg_find()函数并进行添加。

2、检查点的类型

①文本检查点

Search for specific Text:需要查询的标准文本。

Search for Text by start and end of string:文本检查点根据左右边界值进行查找。

Search in:查找的范围AllBodyHeaders,一般默认为Body

Save count:记录查找内容的出现次数并且存放到一个参数中。

Fail if:设置在什么情况下文本检查点函数错误,Found(如果在服务器返回中存在需要检查的对象,那么文本检查点函数出错)、NotFound(如果没有找到对应的内容,那么文本检查点函数出错)。

②自动检查点

打开Run-time Settings/ContentCheck

单击New Application按钮添加一个应用,单击New Rule按钮添加对应的规则。

Search by prefix and suffix:填写需要检查的边界。

Match case:区分大小。

③图片检查点

通过web_image_check()函数可以检查页面上的图片。

注意:图片检查点函数必须在Run-time Settings中打开Preferences下的Enable Image and text check才有效。

7 事务

1、添加事务

在工具栏上的事务按钮即可完成事务的添加操作,在请求之前单击插入事务开始按钮,在弹出对话框中填写事务名称。单击OK按钮后,得到事务开始的函数lr_start_transaction()。在请求后单击插入事务结束按钮,生成一个事务结束的函数lr_end_transaction(,LR_AUTO)

事务状态:LR_AUTO(事务的状态由系统自动根据默认规则来判断)、LR_PASS(事务是以PASS状态通过的)、LR_FAIL(事务以FAIL状态结束)、LR_STOP(事务以STOP状态停止)。

2、事务响应时间

由网络时间、服务器处理时间、网络延迟三大部分组成。

3、事务时间

由响应时间、事物自身时间、思考时间(Think Time)、浪费时间(Wasted Time)。

8 集合点

集合点函数可生成有效可控的并发操作。

打开Insert菜单下的Rendezvous选项,在弹出的对话框中输入集合点名称,即可得到对应的脚本lr_rendezvous()


TAG:

 

评分:0

我来说两句

我的栏目

日历

« 2024-05-11  
   1234
567891011
12131415161718
19202122232425
262728293031 

我的存档

数据统计

  • 访问量: 6878
  • 日志数: 3
  • 建立时间: 2013-11-13
  • 更新时间: 2013-11-13

RSS订阅

Open Toolbar