google搜索 51Testing站内搜索                    软件测试门户 | 软件测试培 训 | 文章资料精选 | 软件测试论坛 | 软件测试博客 | 测试招聘求职 
打印

[求助] 大家看我关联的对不对呀???

大家看我关联的对不对呀???


源代码如下:
<div class='tab-page' id='fangfazx'>
  <div class='tab'>分析结论 </div>
<iframe id='fangfazxframe' style='width:100%;height:100%' frameborder='0' src='' marginwidth='0'  marginheight='0'  scrolling='auto'></iframe>
  <script type='text/javascript'>
tabpane1JS.addTabPage( document.getElementById( 'fangfazx'),'shfxExe.jsp?emethodId=00000000487460',document.all['fangfazxframe'],null,'false' );
</script>
</div>
我想对emethodId=00000000487460做关联,所做关联如下:
web_reg_save_param("emethodId",
                "LB=shfxExe.jsp?emethodId=",
                "RB=\'",
                "Ord=1",
                "Search=Body",
                LAST);
( 注:不是很清楚这里的?和'是否要使用转义字符,但是这里用或不用都有相同错误)
回放脚本时报错:
SH.c(106): Error -26377: No match found for the requested parameter "emethodId". Check whether the requested boundaries exist in the response data. Also, if the data you want to save exceeds 1024 bytes, use web_set_max_html_param_len to increase the parameter size   [MsgId: MERR-26377]
我知道26377错误可能是关联放的地方不对,但我确实是在以上源代码处第一次发现emethodId=00000000487460这个动态数据
还有一点疑问:
是否需要关联的数据都是以一下形式出现的?
<input type="hidden" name="id" value="ZX37000000080738" id="id">

我没做过开发,所以有些东西不是很懂,还请大家多帮忙呀

TOP

请问你是想对 emethodId=00000000487460 做关联呢,还是想对 00000000487460 做关联?
另外,试试SEARCH=ALL。

TOP

想对00000000487460 关联

TOP

SEARCH=ALL???
是不是想说ORD=ALL啊?

TOP

试过了,不管用,好像我关联放的地方不对,但是我第一次找到00000000487460 这个数就是在这个web_url("shfxMain.jsp",里面呢

TOP

楼主的左边界这样写试试 "LB=emethodId=",还有你的关联函数的在脚本中位置是否正确.web_reg_save_param要放在发送关联数据的函数的前面.另外为了验证捕获的动态数据是否正确,你可以在脚本里用lr_eval_string()函数把每次捕获的关联数据输出看看,那样会比较直观的知道你是否捕获了动态数据.

TOP

楼上的都说的很清楚了

小补充:

使用lr_message和lr_eval_string()把数据输出到控制台的例子:

lr_message("data is: %s", lr_eval_string("{变量名}"))

希望对楼主有用,如果已经知道无视我就行了 :)

TOP

使用extend log查看关联的数据和使用lr_eval_string函数查看,效果一样吗?
6#说,web_reg_save_param要放在发送关联数据的函数的前面,我怎样找这个发送关联数据的函数呢?

TOP

应该是关联函数的位置不正确吧,在extend log里找一下需要关联的数据,然后把关联函数放在这个之前。

TOP

web_reg_save_param("emethodId",
                "LB=emethodId=",
                "RB=\'",
                LAST);

把这个放在脚本最前面呢?
任何事情都有解决的办法,无法可想的事是没有的。---爱迪生

TOP

你在脚本搜索一下00000000487460字符串在那个函数里出现,然后把web_reg_save_param()函数放在这个函数前面试一下.一般情况是这样

TOP

引用:
原帖由 wang_nning 于 2008-7-7 09:32 发表
使用extend log查看关联的数据和使用lr_eval_string函数查看,效果一样吗?
6#说,web_reg_save_param要放在发送关联数据的函数的前面,我怎样找这个发送关联数据的函数呢?
据我的理解和使用,是一样的。
发送关联数据的函数需要你自己对过程的理解才能找到。根据你一楼的代码,你想关联的东西应该是在一个网页中的javascript里面吧?那么访问这个网页的函数就是发送关联数据的函数,将关联函数放到这个访问函数之前试试。

TOP

放在web_url("shfxMain.jsp",这个前面试试?
向着QTP自动化方向深入发展
欢迎QTP研究者一起交流,相互进步
欢迎访问我的测试博客:http://www.51testing.com/?uid/161787

TOP

我就是按11#说的那样做的
但是后来我试了一下,这里不做关联也能走的通
但是如果加上关联应该也没有影响的吧。

TOP

关联函数是注册函数,用之前要申明的,所以要放在关联内容前,通俗的讲,也就是先买票再上车了。

关联是提供方便的,别搞的复杂了。
欢迎访问我的论坛:http://www.v512.com/bbs/index.php中的软件测试频道,有困难我们共同分担,有快乐我们一起分享!

TOP

感觉是关联函数的位置放错了,请放到需要获得关联数据的函数请求之前。

TOP

多谢大家帮忙啦

TOP

 
当前时区 GMT+8, 现在时间是 2008-9-8 00:36Copyright(C)上海博为峰软件技术有限公司 2001-2007 电话:021-64471599-8017
当您在访问网站、论坛及博客过程中遇到问题时可发送email:webmaster@51testing.com或发送论坛短信至管理员风在吹