suliang 发表于 2005-12-26 11:23:59

怎样处理用web_reg_save_param,截取的边界跨行问题

函数: web_reg_save_param("flight_num",                              中   
                "LB=",
                "RB=",
                "Ord=ALL",
                LAST);
      如果,rb或者lb很多,在一行内无法确定值,需要跨几行取一个唯一的值来标定,
   例如有一段html
    <td colspan="2" class="header"><a href="member.php?action=credits&view=forum_post&fid=67" target="_blank"><img src="images/default/credits.gif" alt="查看积分策略说明" align="right" border="0"></a>发新话题</td>
</tr>
<tr><td class="altbg1">用户名:</td>
<td class="altbg2">suliang <span class="smalltxt">[<a href="logging.php?action=logout">退出登录</a>]</span></td>
</tr>
<tr>
   我要取suliang这个值,但是这一行无法表明,需要用用户名这个值来表明,按照我的理解用web_reg_save_param应该这样实现
   web_reg_save_param("flight_num",                              
                "LB=用户名:</td>
<td class=\"altbg2\">",
                "RB=<span class=",
               LAST);
      但是这样,loadrunner始终说找不到这个值,我现在只有用SaveOffset和savelen这两个参数来解决(不想用,存为两个数组的方式,然后进行遍历一个数组匹配另一个数组的方式),但这样存在如果长度不一样,截取不准的问题。我仔细看了帮助,发现当rb为空时候,默认是到本行结尾,那么请问是不是web_reg_save_param这个函数不支持换行。还有web_reg_save_param这个函数是不是好像有时不能从loadrunner recordinglog中进行抓取,必须参照网页源代码进行。

笑游天涯侠 发表于 2005-12-26 14:17:17

用户名需要用关联?

一般来说,对“用户名”都是参数化。不会吧,你的系统对“用户名”需要用关联?“suliang”是服务器自动产生的?

tacy_lee 发表于 2005-12-26 16:30:03

可以跨行 用\r\n表示换行

suliang 发表于 2005-12-27 09:29:45

1、我只是用这个页面去举个例子,不是说为了截取suliang,而问这个问题。用户名参数化我知道,并且用了很多,但是某些需要作关联的参数,例如:value的值,多选框的名字,甚至一段id号,这些如果出现跨行就很难截取。
2、我试过\\r\\n来做,但是始终提示找不到,如果从recording中进行查找,又涉及到换行引号的问题,如果从源代码中找,还有行间空格的问题。

tacy_lee 发表于 2005-12-27 10:33:25

从recording中把引号删除,如果还不能找到,可能是中文的问题

metoto 发表于 2012-6-1 12:35:00

mark

我的解决方法还是,还是在源码里找,至于行间空格,我是先取<tr><td class="altbg1">用户名:</td>和>之间的值,会取出比如’      <td class="altbg2"‘,然后直接从record里连着空格一起复制,就可以去到你最终的值了。

<tr><td class="altbg1">用户名:</td>
<td class="altbg2">suliang <span class="smalltxt">[<a href="logging.php?action=logout">退出登录</a>]</span></td>
页: [1]
查看完整版本: 怎样处理用web_reg_save_param,截取的边界跨行问题