如何在性能测试脚本中做关联_第1页
如何在性能测试脚本中做关联_第2页
如何在性能测试脚本中做关联_第3页
如何在性能测试脚本中做关联_第4页
如何在性能测试脚本中做关联_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第第页如何在性能测试脚本中做关联如何在性能测试脚本中做关联

发表于:2023-09-11来源::点击数:标签:性能测试脚本

如何在脚本中做关联(Correlation)当录制脚本时,VuGen会拦截client端(浏览器)与server端(网站服务器)之间的对话,并且通通记录下来,产生脚本。在VuGen的RecordingLog中,您可以找到浏览器与服务器之间所有的对话,包含通讯内容、日期、时间、浏览

如何在脚本中做关联(Correlation)

当录制脚本时,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”,listofAttributes>,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】>【IProtocol】>【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】,以启

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论