对于职业我们要有梦想,不抛弃不放弃。人生才会有乐趣。
如何使用loadrunner的关联?
上一篇 /
下一篇 2010-12-17 14:58:39
/ 个人分类:性能测试
(1.)什么时关联?
所谓的关联就是把脚本中某些写死的数据,转变成动态的数据。
我们为什么要使用关联?
首先,它可以生成动态的数据,固定的数值是骗不过智能的服务器的,如果将数据变成动态的,客户端就能通过发送动态数据包骗过服务器,从而达到成功访问服务器的目的。其次,我们可以将这些冗长的输入给参数化,通过应用关联技术,可以有效减少代码的大小,这样不仅代码量会减少,脚本层看参数的时候也会更加清晰,明了。
(2.)如何做关联?
(一.)自动关联:Ctrl+F8组合键实现数据的自动关联。
◆关联的两种机制,Rules Correlation,在录制过程中VuGen根据已经指定的规则,自动找出要关联的值。Correlation Studio是在执行脚本后才会建立关联,也就是说当录制脚本后,脚本至少要执行一次,Correlation Studio才会起作用。
◆关联规则来源:内建关联和自定义关联
内建关联是VuGen针对常用的一些系统建立关联规则在脚本录制的时候已经自动关联起来了。用户自定义关联规则,【Recording Options】>【Internet Protocol】>【Correlation】进行建立新的关联规则。
◆Rules Correlation使用方法:
①,启动Auto-Correlation
▲选择VuGen的【Tools】>【Reconding Options】,开启【Reconding Options】对话窗口,选取【Internet Protocol】>【Correlation】,选择【Enable correlation during recording】项启用自动关联。
▲假如录制的应用系统属于内建关联规则的系统,如Oracle,PeopleSoft等请选择相对应的应用系统或者针对录制的应用系统加入新关联规则。
▲设定VuGen检查到符合关联规则的数据时,需要处理的方式有两种。
一,【Issue a pop-up message and let me decide online】:弹出一个对话框,询问是否要建立关联。
二,【Perform. correlation in script】:直接自动建立关联。
②录制脚本
开始录制脚本的过程中当VuGen检查到符合关联规则的数据时,会依照设定建立关联,出现类似的脚本。
③执行脚本验证关联是否正确。
◆Correlation使用方法:
①,录制脚本并执行。
②,执行完成后,VuGen会弹出【Scan Action for Correlation】窗口,询问的是否要扫描脚本并建立关联,选择【yes】按钮。扫描完后,可以在脚本下方的【Correlation Results】中看到扫描的结果。
(二.)手动关联
操作步骤 | 详细描述 |
第一步 | (1.) 首先,录制并保存一份脚本。 (2.) 然后,这依照相同的操作步骤,输入相同数据录制并保存第二份脚本。 需要注意的是操作步骤和数据一定要相同,这样才能找出由于服务器端产生的数据差异。 |
第二步 | 用Win Diff工具,找出两份脚本之间的不同之处,也就是需要关联的数据。 (1.) 用LoadRunner打开第二份脚本,依次选择【Tools】>【Compare with Vuser….】项在弹出对话框中选择第一份脚本。 (2.) 接着LoadRunner调用Win Diff工具,显示两份脚本。Win Diff会以一行黄色标示有差异的脚本代码行,如果您想以红色的字体显示真正差异的文字,请依次选择Win Diff工具中【Options】>【View】>【Show Inline Differences】项. (3.) 逐行检查了两份脚本中差异的内容,每个差异都可能是需要做关联的地方。选取差异的脚本,然后复制。需要注意的是请忽略lr_think_time的差异部分,因为lr_think_time是用来模拟每个步骤之间食用者思考延迟的时间,我们在进行脚本录制的时候每一次操作的思考时间可能不同。接着我们要在Recording Log中找到这个值,打开【Find】对话框,粘贴上刚刚复制的内容,找出查找内容在Recording Log第一次出现的位置。如果您在Recording Log中找到了要找的数据。这时要确认是从服务器端传送的数据。首先,可以先检查数据的标头,从标头中的Receiving Response可以知道数据是从服务器传送到客户端的数据。假如此数据第一次出现是在Sending Request中,则表示此数据是由客户端产生的数据,不需要做关联,但是有可能需要做参数化。要找的标头格式如下:Recrving response from hostwww.lqqm.net:80(16/2/200822:25:33)现在我们找到不一样的地方,而且是由服务器产生的数据,此数据极由可能需要做关联。 |
第三步 | 将脚本中用到关联的数据,用参数代替。 (1.) 在进行B/S结构Web应用数据关联时,web_reg_ save_param是最重要的一个函数,其功能从服务器获得相应后,通过设定左,右边界字符串,找出变化的数据(即需要做关联的数据)并将其存储在一个参数总,以供后续脚本使用。找到关联数据后。接下来就要在适当位置,使用web_reg_ save_param函数,将数据存储到某个变量。 (2.) 为了找到使用web_reg_ save_param函数的正确位置,要重新执行一遍脚本,而且要开启脚本日志功能。 |
启动Log的操作步骤:
操作步骤 | 详细描述 |
第一步 | 在VuGen总依次选择【Vuser】>【Run-Time Settings】项 |
第二步 | 依次选择【General】>【Log】项 |
第三步 | 针对需要选择【Enable logging】,【Always sends messages】,【Extended log】,以及【Extended log】下的选项。 |
第四步 | 单击【OK】按钮,就可以执行脚本了。 |
(3.)关联函数详解。
web_reg_ save_param函数主要根据需要做关联的动态数据前面和后面固定字符串来识别,提取动态数据,所以在做关联时需要找出动态数据的左,右边界字符串。在应用这个函数之前我们详细了解函数的各个参数都代表什么含义。
关于web_reg_ save_param函数。
函数原型:int web_reg_ save_param(const char *ParemName,<list of Attributes>,LAST)
参数说明。
收藏
举报
TAG: