彩票走势图

logo LoadRunner 系列教程
文档彩票走势图>>LoadRunner 系列教程>>LoadRunner教程之手动关联详解

LoadRunner教程之手动关联详解


一、关联的含义:
  关联(correlation):在脚本回放过程中,客户端发出请求,通过关联函数所定义的左右边界值(也就是关联规则),在服务器所响应的内容中查找,得到相应的值,已变量的形式替换录制时的静态值,从而向服务器发出正确的请求,这种动态获得服务器响应内容的方法被称作关联。
二、关联的过程:
  以登陆场景为例,客户端发出获得登录页面的请求,服务器端得到该请求后,返回登录页面,同时动态生成一个Session Id,当用户输入用户名密码,请求登录时,该Session Id同时被发送到服务器端,如果该Session Id在当前会话中有效,那么返回登录成功的页面,如果不正确则登录失败;在loadrunner第一次录制过程中会把这个值记录了下来,但回放时,客户端发出同样的请求,而服务器端再一次动态的生成了新的Session Id,与Loadrunner中录制的Session Id不匹配,此时客户端发出的请求就会失败,为了获得这个动态的Session Id就用到了关联。
三、关联的使用:
LR中对参数关联分两种:
  1、自动关联,比如在录制好后的脚本中,按CTRL+F8,扫描关联,将扫描出来的内容关联即可;如果LR找不到关联时,就需要手动进行关联。
  2、手工关联函数web_reg_save_param,运行脚本时,web_reg_save_param 函数将扫描所访问的后续 HTML 页。如果指定左边界和右边界,将搜索这些边界之间的文本。将匹配的内容保存在web_reg_save_param中定义的参数中。
实现过程如下:
web_reg_save_param("outFlightVal",
"LB=outboundFlight value=", "RB= checked >", LAST );
web_submit_form("reservations.pl",
"Snapshot=t4.inf",
ITEMDATA,
"Name=depart", "Value=London", ENDITEM,
"Name=departDate", "Value=11/20/2003", ENDITEM,
"Name=arrive", "Value=New York", ENDITEM,
"Name=returnDate", "Value=11/21/2003", ENDITEM,
"Name=numPassengers", "Value=1", ENDITEM,
"Name=roundtrip", "Value=<OFF>", ENDITEM,
"Name=seatPref", "Value=None", ENDITEM,
"Name=seatType", "Value=Coach", ENDITEM,
"Name=findFlights.x", "Value=83", ENDITEM,
"Name=findFlights.y", "Value=16", ENDITEM,
LAST );
web_submit_form("reservations.pl_2",
"Snapshot=t5.inf",
ITEMDATA,
"Name=outboundFlight", "Value={outFlightVal}", ENDITEM,
"Name=reserveFlights.x", "Value=92", ENDITEM,
"Name=reserveFlights.y", "Value=10", ENDITEM,
LAST );
定义了搜索范围LB左边界值和RB右边界值,将匹配的内容存放在outFlightVal中,在web_submit_form表单中进行引用。
实例说明:
以下为服务响应表单,对返回的动态值orderId进行关联:
  <input type="hidden" id="orderId" name="orderId"
  value="f28958249e141e62312d855ce73252d3"/>
实现如下:
  web_reg_save_param("orderId",
  "LB=name="orderId" value="",
  "RB="",
  LAST);
在服务响应表单中找左边界是:name="orderId" value="
右边界是:"
将匹配到的结果赋给orderId。
之后就可以在后续流程中尽情的调用关联值了。
另外:web_reg_save_param要放在web_submit_form等提交表单函数之前。
web_reg_save_param必须在获取返回值的操作前面注册,在获取返回值的操作后面使用。
保存参数最大不能超过256字节,如果超过256字节请使用int web_set_max_html_param_len(const char *length )函数扩大参数保存范围。
例如:web_set_max_html_param_len ("1024"); //扩大参数最大保存范围为1024字节。

本文转自()

点击下载最新版LoadRunner试用

>>查看loadrunner和更多性能测试相关教程、咨询、资讯!<<

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP