LoadRunner关联详解.docx

上传人:b****1 文档编号:2375329 上传时间:2022-10-29 格式:DOCX 页数:10 大小:21.73KB
下载 相关 举报
LoadRunner关联详解.docx_第1页
第1页 / 共10页
LoadRunner关联详解.docx_第2页
第2页 / 共10页
LoadRunner关联详解.docx_第3页
第3页 / 共10页
LoadRunner关联详解.docx_第4页
第4页 / 共10页
LoadRunner关联详解.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

LoadRunner关联详解.docx

《LoadRunner关联详解.docx》由会员分享,可在线阅读,更多相关《LoadRunner关联详解.docx(10页珍藏版)》请在冰豆网上搜索。

LoadRunner关联详解.docx

LoadRunner关联详解

LoadRunner关联详解

9.4分

出处:

2345软件大全时间:

2012-07-09人气:

10041

相关下载:

HPMercuryLoadRunnerV8.0

核心提示:

当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来

  当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来,产生脚本。

在VuGen的RecordingLog中,您可以找到浏览器与服务器之间所有的对话,包含通讯内容、日期、时间、浏览器的请求、服务器的响应内容等等。

脚本和RecordingLog最大的差别在于,脚本只记录了client端要对server端所说的话,而RecordingLog则是完整纪录二者的对话。

  当执行脚本时,您可以把VuGen想象成是一个演员,它伪装成浏览器,然后根据脚本,把当初真的浏览器所说过的话,再对网站伺服器重新说一遍,VuGen企图骗过服务器,让服务器以为它就是当初的浏览器,然后把网站内容传送给VuGen。

  所以纪录在脚本中要跟服务器所说的话,完全与当初录制时所说的一样,是写死的(hard-coded)。

这样的作法在遇到有些比较聪明的服务器时,还是会失效。

这时就需要透过「关联(correlation)」的做法来让VuGen可以再次成功地骗过服务器。

  何谓关联(correlation)?

  所谓的关联(correlation)就是把脚本中某些写死的(hard-coded)数据,转变成是撷取自服务器所送的、动态的、每次都不一样的数据。

  举一个常见的例子,刚刚提到有些比较聪明的服务器,这些服务器在每个浏览器第一次跟它要数据时,都会在数据中夹带一个唯一的辨识码,接下来就会利用这个辨识码来辨识跟它要数据的是不是同一个浏览器。

一般称这个辨识码为SessionID。

对于每个新的交易,服务器都会产生新的SessionID给浏览器。

这也就是为什么执行脚本会失败的原因,因为VuGen还是用旧的SessionID向服务器要数据,服务器会发现这个SessionID是失效的或是它根本不认识这个SessionID,当然就不会传送正确的网页数据给VuGen了。

  下面的图示说明了这样的情形:

  当录制脚本时,浏览器送出网页A的请求,服务器将网页A的内容传送给浏览器,并且夹带了一个ID=123的数据,当浏览器再送出网页B的情求时,这时就要用到ID=123的数据,服务器才会认为这是合法的请求,并且把网页B的内容送回给浏览器。

  在执行脚本时会发生什么状况?

浏览器再送出网页B的请求时,用的还是当初录制的ID=123的数据,而不是用服务器新给的ID=456,整个脚本的执行就会失败。

  要对付这种服务器,我们必须想办法找出这个SessionID到底是什么、位于何处,然后把它撷取下来,放到某个参数中,并且取代掉脚本中有用到SessionID的部份,这样就可以成功骗过服务器,正确地完成整个交易了。

  哪些错误代表着我应该做关联(correlation)?

  假如脚本需要关联(correlation),在还没做之前是不会执行通过的,也就是说会有错误讯息发生。

不过,很不幸地,并没有任何特定的错误讯息是和关联(correlation)有关系的。

会出现什么错误讯息,与系统实做的错误处理机制有关。

错误讯息有可能会提醒您要重新登入,但是也有可能直接就显示HTTP404的错误讯息。

  要如何做关联(correlation)?

  关联(correlation)函数

  关联(correlation)会用到下列的函数:

  *web_reg_save_param:

这是最新版,也是最常用来做关联(correlation)的函数。

  语法:

  web_reg_save_param(“ParameterName”,,LAST);

  *web_create_html_param、web_create_html_param_ex:

这二个函数主要是保留作为向前兼容的目的的。

建议使用web_reg_save_param函数。

  详细用法请参考使用手册。

在VuGen中点选【Help】>【Functionreference】>【Contexts】>【WebandWirelessVuserFunctions】>【CorrelationFunctions】。

  如何找出要关联(correlation)数据

  简单的说,每一次执行时都会变动的值,就有可能需要做关联(correlation)。

  VuGen提供二种方式帮助您找出需要做关联(correlation)的值:

  1.自动关联

  2.手动关联

  自动关联

  VuGen内建自动关联引擎(auto-correlationengine),可以自动找出需要关联的值,并且自动使用关联函数建立关联。

  自动关联提供下列二种机制:

  *RulesCorrelation:

在录制过程中VuGen会根据订定的规则,实时自动找出要关联的值。

规则来源有两种:

  o内建(Built-inCorrelation):

  VuGen已经针对常用的一些应用系统,如AribaBuyer、BlueMartini、BroadVision、InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,内建关联规则,这些应用系统可能会有一种以上的关联规则。

您可以在【RecordingOptions】>【InternetProtocol】>【Correlation】中启用关联规则,则当录制这些应用系统的脚本时,VuGen会在脚本中自动建立关联。

  您也可以在【RecordingOptions】>【InternetProtocol】>【Correlation】检视每个关联规则的定义。

  o使用者自订(User-definedRulesCorrelation):

  除了内建的关联规则之外,使用者也可以自订关联规则。

您可以在【RecordingOptions】>【InternetProtocol】>【Correlation】建立新的关联规则。

  *CorrelationStudio:

有别于RulesCorrelation,CorrelationStudio则是在执行脚本后才会建立关联,也就是说当录制完脚本后,脚本至少须被执行过一次,CorrelationStudio才会作用。

CorrelationStudio会尝试找出录制时与执行时,服务器响应内容的差异部分,藉以找出需要关联的数据,并建立关联。

  RuleCorrelation

  请依照以下步骤使用RuleCorrelation:

  1.启用auto-correlation

  1.点选VuGen的【Tools】>【RecordingOptions】,开启【RecordingOptions】对话窗口,选取【InternetProtocol】>【Correlation】,勾选【Enablecorrelationduringrecording】,以启用自动关联。

  2.假如录制的应用系统属于内建关联规则的系统,如AribaBuyer、BlueMartini、BroadVision、InterStage、mySAP、NetDynamics、Oracle、PeopleSoft、Siebel、SilverJRunner等,请勾选相对应的应用系统。

  3.或者也可以针对录制的应用系统加入新的关联规则,此即为使用者自订的关联规则。

  4.设定当VuGen侦测到符合关联规则的数据时,要如何处理:

  §【Issueapop-upmessageandletmedecideonline】:

跳出一个讯息对话窗口,询问您是否要建立关联。

  §【Perform.correlationinsceipt】:

直接自动建立关联

  2.录制脚本

  开始录制脚本,在录制过程中,当VuGen侦测到符合关联规则的数据时,会依照设定建立关联,您会在脚本中看到类似以下的脚本,此为BroadVision应用系统建立关联的例子,在脚本批注部分可以看到关联前的数据为何。

  3.执行脚本验证关联是OK的。

  CorrelationStudio

  当录制的应用系统不属于VuGen预设支持的应用系统时,RuleCorrelation可能既无法发挥作用,这时可以利用CorrelationStudio来做关联。

  CorrelationStudio会尝试找出录制时与执行时,服务器响应内容的差异部分,藉以找出需要关联的数据,并建立关联。

  使用CorrelationStudio的步骤如下:

  1.录制脚本并执行

  2.执行完毕后,VuGen会跳出下面的【ScanActionforCorrelation】窗口,询问您是否要扫描脚本并建立关联,按下【Yes】按钮。

  3.扫描完后,可以在脚本下方的【CorrelationResults】中看到扫描的结果。

  4.检查一下扫瞄的结果后,选择要做关联的数据,然后按下【Correlate】按钮,一笔一笔做,或是按下【CorrelateAll】让VuGen一次就对所有的数据建立关联。

  注意:

由于CorrelationStudio会找出所有有变动的数据,但是并不是所有的数据都需要做关联,所以不建议您直接用【CorrelateAll】。

  5.一般来说,您必须一直重复步骤1~4直到所有需要做关联的数据都找出来为止。

因为有时前面的关联还没做好之前,将无法执行到后面需要做关联的部份。

  有可能有些需要做关联的动态数据,连CorrelationStudio都无法侦测出来,这时您就需要自行做手动关联了。

  手动关联

  手动关联的执行过程大致如下:

  1.使用相同的业务流程与数据,录制二份脚本

  2.使用WinDiff工具协助找出需要关联的数据

  3.使用web_reg_save_param函数手动建立关联

  4.将脚本中有用到关联的数据,以参数取代

  接下来将详细的说明如何执行每个步骤

  使用相同的业务流程与数据,录制二份脚本

  1.先录制一份脚本并存档。

  2.依照相同的操作步骤与数据录制第二份脚本并存盘。

注意,所有的步骤和输入的数据一定都要一样,这样才能找出由服务器端产生的动态数据。

  有时候会遇到真的无法使用相同的输入数据,那您也要记住您使用的输入数据,到时才能判断是您输入的数据,还是变动的数据。

  使用WinDiff工具协助找出需要关联的数据

  1.在第二份脚本中,点选VuGen的【Tools】>【ComparewithVuser…】,并选择第一份脚本。

  2.接着WinDiff会开启,同时显示二份脚本,并显示有差异的地方。

WinDiff会以一整行黄色标示有差异的脚本,并且以红色的字体显示真正差异的文字。

(假如没看到红色字体,请点选【Options】>【View】>【ShowInlineDifferences】)。

  3.逐一检视二份脚本中差异的部份,每一个差异都可能是需要做关联的地方。

选取差异的脚本,然后复制。

  在复制时,有时并不需要取整行脚本,可能只会选取脚本中的一部分。

  注意:

请忽略lr_thik_time的差异部份,因为lr_thik_time是用来模拟每

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1