51Testing软件测试论坛

标题: LR检查点使用小结 [打印本页]

作者: lele8662    时间: 2009-7-9 16:54
标题: LR检查点使用小结
刚研究LR没多久,把一些心得发出来share下~~~
LR中检查点有两种:图片和文字。这两种检查点可用以下三个函数实现:web_find()web_reg_find()web_image_check()
下面分别介绍三种函数的用法
1. web_find()函数函数作用:在页面中查找相应的内容
参数举例:web_find("web_find","RighOf=a","LeftOf=b","What=name",LAST);
参数解释:"web_find"定义该查找函数的名称;“LeftOf”和“RighOf=”用来定义查找字符的左右边界;“What=”定义查找内容。
例如上述参数举例中的意思就是在页面中查找左边界为b,右边界为a,内容为name的信息
函数用法:该函数是在查找页面中的内容,所以要放在要查找的内容的后面。
注意事项:使用该函数时,要在Vuser->Run-Tme Settings中更改下设置,勾选Enable Image and text check
系统默认是不勾选该选项的。
关于该函数的其他说明:该函数只能在基于HTML模式录制的脚本中进行查找。
1. web_reg_find()函数函数作用:在缓存中查找相应的内容
参数举例:web_reg_find("Search=Body","SaveCount=ddd","Test=aaa",LAST);
参数解释: Search用来定义查找范围,SaveCount定义查找计数变量名称,该参数可以记录在缓存中查找内容出现的次数,可以使用该值,来判断要查找的内容是否被找到
例如上述参数举例中的意思就是Body中查找内容为aaa的信息,并将出现次数记录在变量ddd中。
函数用法:该函数是在缓存中查找相应的内容,所以要放在查找内容之前。
注:在录制过程中添加的检查点,用到的函数是web_reg_find(),且参数只有“Text=”
2. web_image_check()函数函数作用:在页面中查找一个具体的图片。
参数说明:web_image_check("web_image_check","Alt=","Src=",LAST);;
参数解释:“Alt”和“Src”的值直接取该图片在网页源代码中相应参数的值。
函数用法:该函数是在缓存中查找相应的内容,所以要放在查找内容之前。
注意事项:使用该函数时,要在Vuser->Run-Tme Settings中勾选Enable Image and text check,具体操作请看web_find()中的注意事项。
经过测试,该函数用到查找内容前面或后面,都不影响查找结果。
举例说明(脚本)
该脚本记录的是登陆系统后退出的操作,在脚本中用到atoi()函数和lr_eval_string(”{SaveCount定义的变量}”)两个函数结合使用,判断查找内容出现的次数是否大于0,若大于0,则输入登录成功的信息。
该部分内容请看附件

Replay Log常见信息说明
1.
web_find()web_image_check()函数的日志信息
(这两个日志信息是上一样的,只是输出的函数名和参数不同)
1)
信息1Action.c(22): Verification checks not enabled. web_image_check is skipped. See the 'Run-time settings/Preferences/Checks'

[MsgId: MMSG-27197]

Action.c(22): web_image_check was successful

[MsgId: MMSG-26392]

出现该信息,说明没有勾选Enable Image and text check
2)
信息2Action.c(22): "web_image_check" succeeded (1 occurrence(s) found. Alt="", Src="/xjcost/jsp/images/index1/edit_01.gif")

[MsgId: MMSG-27192]

Action.c(22): web_image_check was successful

[MsgId: MMSG-26392]

出现该信息,说明检查点设置成功,且已经查找到信息
3)
信息3Action.c(22): Error -27191: "web_image_check" failed (0 occurrence(s) found. Alt="", Src="/xjcost/jsp/images/index1/edit_1.gif")

[MsgId: MERR-27191]

Action.c(22): web_image_check highest severity level was "ERROR"

[MsgId: MMSG-26391]

出现该信息,说明要查找的内容没有找到。这时依次尝试以下操作:
1)检查参数的信息是否写错;
2)如果是web_find(),检查函数的位置是否在要查找内容的后面;
3)如果是web_image_check(),查看该图片的源代码,看其是否是这个页面上的图片,很可能是图片选择错误,即所选图片不属于该页面。
2. web_reg_find()函数的日志信息1)信息1Action.c(15): Registering web_reg_find was successful

[MsgId: MMSG-26390]

出现该信息,说明内容已查找到
2)信息2Action.c(27): Error -26366: "Text=ABC" not found for web_reg_find

[MsgId: MERR-26366]

Action.c(27): web_submit_data("userLogin.struts") highest severity level was "ERROR", 18364 body bytes, 918 header bytes, 13 chunking overhead bytes

[MsgId: MMSG-26387]

该信息在replay log页面是红色显示的,说明没有找到内容,出现此情况尝试以下两个操作:
1)
参数的信息是否正确;

2)
查看该函数是否在查找内容的前面。

作者: zoutaotao    时间: 2010-12-14 11:03
学习了
作者: zoutaotao    时间: 2010-12-14 11:30
学习脚本,感觉还不错
作者: zhaojing414    时间: 2010-12-21 11:38
手工写的和lr自己插入的有很大区别?
作者: 鱼鳞    时间: 2010-12-21 15:20
没有具体操作,因为不了解其具体应用意义
作者: zhjl5661990    时间: 2011-6-2 15:18
看看有帮助
作者: myallways    时间: 2011-6-2 22:23
不错撒
作者: m5o2o1n    时间: 2011-6-3 10:32
不错
作者: june871128    时间: 2011-6-3 14:37
回复 1# lele8662


    学习学习!
非常感谢分享哦。。
作者: 夏日摸摸茶    时间: 2011-6-25 13:22
学习了
作者: erdongchx    时间: 2011-6-26 10:10
谢谢,学习下
作者: wenquan125    时间: 2011-6-28 09:32
总结的不错,呵呵
作者: xifan1014    时间: 2011-6-28 13:52
谢谢分享~
作者: shy2005828    时间: 2011-7-6 17:56
学习了,谢谢分享
作者: wf5570525    时间: 2011-7-7 13:03
学习下
作者: oceanwell    时间: 2012-1-13 16:30
good!
作者: fly_away    时间: 2012-1-13 20:32
本帖最后由 fly_away 于 2012-1-13 20:34 编辑

总觉得检查点和集合点是比较鸡肋的技能,在负载场景中基本没什么用。


倒是关联和参数化相当重要。

我是来抛砖的,还请大家丢玉出来。
求教育~~
作者: 如果弯弯    时间: 2012-1-14 23:31
注:在录制过程中添加的检查点,用到的函数是web_reg_find(),且参数只有“Text=”,这个意思是指如果用了savecount参数,检查就会失效嘛?想验证一下这个说法。
作者: xxl1989    时间: 2012-3-8 13:03
看看啊
作者: ljw375    时间: 2012-3-8 14:15
还不错,写的很详细。
作者: bluetearxie    时间: 2012-3-8 14:42
收藏了 谢谢楼主分享
作者: wujinjie0346    时间: 2012-3-9 11:16
谢谢
作者: 蓝色水滴    时间: 2012-3-14 16:13
网上的人都这么说,但是怎么做都是错误的,即:



2)信息2Action.c(27): Error -26366: "Text=ABC" not found for web_reg_find

[MsgId: MERR-26366]
Action.c(27): web_submit_data("userLogin.struts") highest severity level was "ERROR", 18364 body bytes, 918 header bytes, 13 chunking overhead bytes

[MsgId: MMSG-26387]


至今无人能解答。
作者: 蓝色水滴    时间: 2012-3-14 16:13
按照下面的2个方法实验过了,还是错误的。
作者: 蓝色水滴    时间: 2012-3-14 16:14
Action()
{
web_reg_find("Fail=NotFound",
                "Search=Body",
                "SaveCount=ac",
                "Text/ALNUMIC=登录",
                LAST);


        web_url("www.baidu.com",
                "URL=http://www.baidu.com/",
                "TargetFrame=",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t1.inf",
                "Mode=HTML",
                EXTRARES,
                "URL=/cache/sug/js/bdsug-1.1.js", ENDITEM,
                "URL=http://nsclick.baidu.com/v.gif?pid=201&pj=www&fm=behs&tab=refer&refer=&path=http%3A%2F%2Fwww.baidu.com%2F&t=1331712332875", ENDITEM,
                "URL=/img/i-1.0.0.png", ENDITEM,
                LAST);

        return 0;
}



Action.c(14): Error -26366: "Text=登录" not found for web_reg_find          [MsgId: MERR-26366]
Action.c(14): web_url("www.baidu.com") highest severity level was "ERROR", 10350 body bytes, 2205 header bytes          [MsgId: MMSG-26388]
作者: 蓝色水滴    时间: 2012-3-14 16:14
楼主,解答下,或者直接把脚本拷过去,你试试看。
作者: white2010    时间: 2012-3-22 17:06
这些函数是在http协议下才能用的




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2