LoadRunner关联(手动关联)

2010-11-04  袁军 

第三步:确认插入关联的位置

  我们在日志中找到了两次脚本的不同点的位置,根据这个位置,我们再确定是在哪个请求之后产生的,也就是说要定位发生不同点的response是由哪个request产生的,找到了这个请求的函数位置,我们就知道要往哪里做关联了。

  一般情况下关联函数写到发出请求的函数之前就可以了。

  第四步:插入关联函数

  在插入关联函数前,我们先介绍关联函数web_reg_save_param

  一个web_reg_save_param函数的例子:

web_reg_save_param ("sessionid",

  "LB=Session_id:",

  "RB=;",

  "Search=Body",

  LAST);

  在这里我们只介绍几个常用参数的含义

  语法:int web_reg_save_param(const char *ParamName, <list of Attributes>, LAST);

  参数说明:

  ParamName: 存放得到的动态内容的参数名称

  list of Attributes: 其它属性,包括:Notfound, LB, RB, RelFrameID, Search, ORD, SaveOffset, Convert, SaveLen。属性值不分大小写

  LB( Left Boundary ) : 返回信息的左边界字串。该属性必须有,并且区分大小写。

  RB( Right Boundary ): 返回信息的右边界字串。该属性必须有,并且区分大小写。

  Search : 返回信息的查找范围。可以是Headers,Body,Noresource,All(缺省)。该属性质可有可无。

  那么如何插入该关联函数呢?

  1.将vugun切换到 view tree 模式下

  2.在左边的列表中,找到在上一步发出请求的函数,点击“右键”

  选择“insert before”

  3.在弹出的“add step”对话框的“find function”中输入“web_reg_save_param”,点击“ok”

  在“parameter name”中输入,关联函数的名称,这里最好有含义,“sessionid”

  在“left boundary”中输入,刚才记录下的不同点字符串的左面的几个字符,定义左边界,Session_id:

  在“right boundary”中输入,刚才记录下的不同点字符串的右面的几个字符,定义右边界,;

  在“search in ”中,选择“body”

  点击“ok”

  4.回到脚本编辑模式下,查看该函数插入是否正确

  在发出请求的函数前应该看到:

web_reg_save_param ("sessionid",

  "LB=Session_id:",

  "RB=;",

  "Search=Body",

  LAST);

  第五步:将脚本中有用到关联的数据,用参数代替

  如发出请求的参数如下,那么将原来服务器返回的动态值使用{ sessionid } 来替换:

web_submit_form("login.php_2",

  "Snapshot=t2.inf",

  ITEMDATA,

  "Name=login", "Value=wangjin", ENDITEM,

  "Name=password", "Value=wangjin", ENDITEM,

  "Name=Session_id","Value={ sessionid } ", ENDITEM,

  "Name=Submit", "Value=Login", ENDITEM,

  EXTRARES,

  "URL=/media/images/border_bg_l.gif", ENDITEM,

  "URL=/media/images/header_bg.gif", ENDITEM,

  "URL=/media/images/th.gif", ENDITEM,

  LAST);

  第六步:验证关联的正确性

  回放脚本,验证关联的正确性。

592°/5891 人阅读/3 条评论 发表评论

朱小玲  2010-11-09

说起来容易,做起来难,我怎么老是找不到需要插入关联的地方呢。郁闷


袁军  2010-11-10

朱小玲: 说起来容易,做起来难,我怎么老是找不到需要插入关联的地方呢。郁闷
你有没有输出关联的结果呢?验证了吗?


朱小玲  2010-11-14

袁军: 你有没有输出关联的结果呢?验证了吗?
我找到需要做关联的字段,到tree视图下,刷新页面找不到。在录制日志里可以找到左右边界,放在页面返回前面,结果有时不对。。。。


登录 后发表评论