停止更新,敏捷测试及TestOps解决体系,关注订阅号TestOps

关于Web_reg_save_param的一个BUG说明

上一篇 / 下一篇  2013-08-09 10:09:42 / 个人分类:性能测试

查看( 2482 ) / 评论( 4 )
土匪太懒了,于是我又有机会出来说点东西了,情况是这样的。
aNu&g&kA0_0 在土匪某一次上课中遇到一个奇怪的问题,通过关联函数web_reg_save_param关联内容,当使用ord=all时可以看到匹配的内容有2条记录,但是当修改ord=2时,脚本关联提示没有匹配的记录条数,然后这个问题就让人崩溃了,完全不符合以前的理解概念啊。于是在土匪孜孜不倦、春风吹战鼓擂、天热不怕光脚等等下,终于找到了问题之所在。51Testing软件测试网(X2Hb9}%?/F4XZ
51Testing软件测试网 ?.e#PPVj
触发这个问题的情况需要满足以下条件,首页A请求会扩展调用A1,A2两个资源,我们需要关联的内容例如是(土匪)存在与A与A1页面中,但A2没有51Testing软件测试网,q&f+?d)@uX
关联参数叫做paramarr关联边界是LB=(土匪 RB=)51Testing软件测试网;PVwm'S"MMh
A  (土匪很淫荡)51Testing软件测试网&sg~-LB3C0R{&a-Ht
+---------A1 (土匪很风骚)
7o:{"U7O f#i`0 +---------A2  没有匹配项
o"~6A3`,e1j0 51Testing软件测试网$J8uP w&M
所以使用ORD=ALL时应该会返回这样的内容
"D N*m DK'q C[Z;_0 paramarr_1="很淫荡"51Testing软件测试网,S-l0E$~*D.D$cX7x
paramarr_2="很风骚"
;GYrD'g[+?/T0 51Testing软件测试网 _8h`4c)q*UFd8]
但是修改为ord=2时就会错误,导致这个问题的原因是在于LR的web_reg_save_param函数是递归搜索资源的,关联会从A开始,然后A1,A2,在ALL的时候没有任何问题,但是当选择ord=1时就会出现问题。问题在于ord=1的值应该是“很风骚”而不是“很淫荡”(也可能反过来记不太清楚了,土匪口述忘了),其实就是后一个会覆盖前一个的情况,在这中状态下,自然Ord=2就没有匹配记录了。这个问题可以通过新版本的web_reg_save_param_ex中的Url来过滤回避。
;Yw@zf4U4Yx0 51Testing软件测试网7] ^'O2@`@;]X
总的来说,其实这个也不能说是个BUG,有些标题党,而是关联函数在使用中的一个细节原理而已,希望对遇到这个问题而不求甚解的朋友有点帮助。

TAG:

abyssalknigh的个人空间 abyssalknigh 发布于2013-08-09 16:13:51
哈哈,土匪上课说过这个问题,真犀利!
地壳的个人空间 地壳 发布于2013-08-09 17:05:13
顶!习惯用web_reg_save_param_ex()
土匪窝 xzf2001 发布于2013-08-19 12:10:23
web_reg_save_param_ex51Testing软件测试网8i
c"a&eq|&L

也存在这个问题,所以在中间加入了request_url属性来修复。
云层专版 云层 发布于2013-08-19 12:52:17
我靠,你终于找回ID了啊。。。
我来说两句

(可选)

Open Toolbar