higkoo 发表于 2007-8-27 12:13:19

LR手动关联 的插入位置 (上传脚本)

打开脚本的朋友可以看到,这是使用mercuryWebTours生成的脚本。只要安装了LR的朋友,脚本稍作修改(替换脚本中机器名)即可使用。
在vuser_init的第56行,已经生成关联:web_reg_save_param( "WCSParam_Diff1", "LB=userSession value=", "RB=>", "Ord=1", "IgnoreRedirections=Yes", "Search=Body", "RelFrameId=1", LAST );   将userSession保存在"WCSParam_Diff1"参数中,在Login的web_submit_data调用。
我想和各位讨论一下关联插入点位置的问题,为什么插在第56行?sdlkfj4

改变位置到 前一个/后一个 web_url时,运行都会提示找不到参数。
LR的关联是很重要,也容易出问题的地方。
网上很多文档都说明在录制日志里找到动态值的位置,然后在对应的地方插入手动关联。

1、在录制日志里找到了动态值位置,如何在脚本中对应?
2、录制日志里没有(本例恰好如此),你该如何处理?
3、在生成日志里出现,如何判断是否需要关联,在脚本中与哪一行对应?


[ 本帖最后由 higkoo 于 2007-8-27 13:09 编辑 ]

zhaoyingqing 发表于 2007-8-28 10:24:14

see ha

423799223 发表于 2007-8-28 13:06:36

1.找到了日志,使用web_reg_save_parm关联
2.没有遇到过,期待高手解答
3.反正我是从来不用自动关联的,录制脚本第一件事就是回放,OK了就加检查点,否则就慢慢排除错误,是不是因为关联的原因

anglix 发表于 2007-8-29 19:56:39

不明白

看来这里下载资料的朋友会多一些……

期待高手 Hoho.....

Athenst 发表于 2007-8-29 21:28:50

路过这里,就来说说我的想法,请大家指正:

1、在录制日志里找到了动态值位置,如何在脚本中对应?
    根据web_reg_save_parm的说明,这个是个注册函数,所以都是在需要关联之前调用。

2、录制日志里没有(本例恰好如此),你该如何处理?
    其实很多人都忽略了,日志不仅仅是LR抛出的LOG,还包括data文件。要是愿意的话可以直接去访问data文件获得关联位置信息。
    我在广州做电信入网测试的时候,很多时候都没有日志,而是直接看data文件,直接写的关联。
    譬如我要做这次的关联的话,我会根据录制代码,直接找到某几段。很明显,23、24、25、26、27都在范围之内。
    这几个数字怎么来的?呵呵,从登录到完成登录的代码段,应该是在init的最后两段到Login的全部,而这个全部里面的Snapshot=什么?没错,就是23到27!
    找到这几个数字之后,翻开data目录,找到23到27号文件。UE打开,找到session所在,正是第24号文件的t24.htm,然后关联。

3、在生成日志里出现,如何判断是否需要关联,在脚本中与哪一行对应?
    判断是否需要关联,这得对业务熟悉,不熟悉业务怎么能判断呢?另外我从来不用自动关联的,也没有遇到过关联发生疑问的情况。
    在哪一行对应的问题可以参考第一个问题。

Athenst 发表于 2007-8-29 21:31:55

对了,我以前写过一个BLOG,专门写的如何找地方关联……

http://www.cnitblog.com/EyeSmoke/archive/2007/05/08/26742.html

我在里面有提到的

   
      当我想知道服务端回给了哪些值的时候,我就直接去脚本目录查看data目录下的文件
   

kyo810922 发表于 2007-8-30 08:46:15

正在等待这个

解决中.

higkoo 发表于 2007-8-30 12:53:43

原帖由 Athenst 于 2007-8-29 21:28 发表 http://bbs.51testing.com/images/common/back.gif


1、在录制日志里找到了动态值位置,如何在脚本中对应?
    根据web_reg_save_parm的说明,这个是个注册函数,所以都是在需要关联之前调用。

      确实是在关联之前调用,但之前有很多脚本,你指的就是第一次出现关联的数据前?
      本来web_reg_save_parm是在服务器返回的数据中查找指定字符串,我之前做了试验,在56行添加,运行成功。上移或下移一个代码行(一个动作)web_reg_save_parm都会失败。
      所以,位置要精确。问题就是如何精确?


2、录制日志里没有(本例恰好如此),你该如何处理?
    其实很多人都忽略了,日志不仅仅是LR抛出的LOG,还包括data文件。要是愿意的话可以直接去访问data文件获得关联位置信息。
    我在广州做电信入网测试的时候,很多时候都没有日志,而是直接看data文件,直接写的关联。
    譬如我要做这次的关联的话,我会根据录制代码,直接找到某几段。很明显,23、24、25、26、27都在范围之内。
    这几个数字怎么来的?呵呵,从登录到完成登录的代码段,应该是在init的最后两段到Login的全部,而这个全部里面的Snapshot=什么?没错,就是23到27!
    找到这几个数字之后,翻开data目录,找到23到27号文件。UE打开,找到session所在,正是第24号文件的t24.htm,然后关联。

这个我试试,多谢指点!

just_cici 发表于 2007-8-30 14:34:19

应该就在第一次出现关联的数据前

ebuluo 发表于 2007-8-30 15:35:03

我来说说我的看法。
1关于web_reg_save_param的加入点,可以先打开tree视图,然后点击服务器响应,找到可能需要关联的地方,一般都是一个url,看看这个url返回响应中是否有需要关联的session等,如果有的话,就把关联代码放到这个树型结构的相对应的代码前面去。树型结构的相对应的代码是很容易找到的。
2这个参照Athenst 的。我没遇到过这种情况。
3不影响脚本回放就不需要关联。当然总是有例外的,比如说webspere的
测试,只要看到那种乱七八遭的代码,基本都是要关联的。不关联也没事,但是重启一次或者重新部署代会导致脚本废掉,极为讨厌。所以还是要看项目需求。测试,需要灵活应变。

higkoo 发表于 2007-8-30 19:39:31

多谢二位啦!   
ebuluohttp://bbs.51testing.com/images/common/back.gif

athenst http://bbs.51testing.com/images/common/back.gif

给你们献花了sdlkfj5

love_yang_83 发表于 2007-9-3 18:51:34

很好

love_yang_83 发表于 2007-9-3 18:52:38

很好

lovelovecat 发表于 2007-9-5 10:31:06

支持

ylhkaixin 发表于 2015-12-1 16:32:16

Athenst 发表于 2007-8-29 21:31
对了,我以前写过一个BLOG,专门写的如何找地方关联……

http://www.cnitblog.com/EyeSmoke/archive/200 ...

不是如何找地方关联。。。。
页: [1]
查看完整版本: LR手动关联 的插入位置 (上传脚本)