lr加入检查点回放提示highest severity level was"ERROR"

上一篇 / 下一篇  2017-05-26 10:34:58 / 个人分类:性能测试相关

代码如下
Action()
{

web_url("WebTours", 
"URL=http://127.0.0.1:1080/WebTours/", 
"TargetFrame=", 
"Resource=0", 
"RecContentType=text/html", 
"Referer=", 
"Snapshot=t7.inf", 
"Mode=HTML", 
LAST);

web_url("WebTours_2", 
"URL=http://127.0.0.1:1080/WebTours/", 
"TargetFrame=", 
"Resource=0", 
"RecContentType=text/html", 
"Referer=", 
"Snapshot=t8.inf", 
"Mode=HTML", 
EXTRARES, 
"Url=../favicon.ico", "Referer=", ENDITEM, 
LAST);

web_url("sign up now", 
"URL=http://127.0.0.1:1080/WebTours/login.pl?username=&password=&getInfo=true", 
"TargetFrame=body", 
"Resource=0", 
"RecContentType=text/html", 
"Referer=http://127.0.0.1:1080/WebTours/home.html", 
"Snapshot=t9.inf", 
"Mode=HTML", 
LAST);

web_url("login.pl", 
"URL=http://127.0.0.1:1080/WebTours/login.pl?username=&password=&getInfo=true", 
"TargetFrame=info", 
"Resource=0", 
"RecContentType=text/html", 
"Referer=http://127.0.0.1:1080/WebTours/home.html", 
"Snapshot=t10.inf", 
"Mode=HTML", 
LAST);

web_reg_find("text= Thank you, {username}",
LAST);

web_submit_data("login.pl_3", 
"Action=http://127.0.0.1:1080/WebTours/login.pl", 
"Method=POST", 
"TargetFrame=info", 
"RecContentType=text/html", 
"Referer=http://127.0.0.1:1080/WebTours/login.pl?username=&password=&getInfo=true", 
"Snapshot=t12.inf", 
"Mode=HTML", 
ITEMDATA, 
"Name=username", "Value={username}", ENDITEM, 
"Name=password", "Value={password}", ENDITEM, 
"Name=passwordConfirm", "Value={password}", ENDITEM, 
"Name=firstName", "Value=sdf", ENDITEM, 
"Name=lastName", "Value=dsf", ENDITEM, 
"Name=address1", "Value=sdf", ENDITEM, 
"Name=address2", "Value=asdf", ENDITEM, 
"Name=register.x", "Value=43", ENDITEM, 
"Name=register.y", "Value=9", ENDITEM, 
LAST);

return 0;
}
回放时报错:
Action.c(49): Error -26366: "Text=Thank you, test43" not found for web_reg_find  [MsgId: MERR-26366]
Action.c(49): web_submit_data("login.pl_3") highest severity level was "ERROR", 2710 body bytes, 226 header bytes  [MsgId: MMSG-26388]
解决方法:

一:打开recording options,在internet protocol下的recording中选择recording level为HTML-based script,点击HTML Advanced,选择script. type为A script. containing explicit.即可。

二:
取消选中run time settings-browser emulation-download non-html resources.解决 
按照方法一方法二操作仍然报错,查看tree发现注册成功,注释掉检查点函数,回放通过。然后再次查看检查点函数的用法:

web_reg_find
 语法:
int web_reg_find (const char *attribute_list, LAST);

参数:
1、attribute_list:

通过Name=Value对来传递参数。例如“Text=string”。Text,TextPfx,TextSfx三个必须有一个出现。其他的属性是可选的。

a) Text:要搜索的字符串,字符串必须非空,以NULL结尾。可以使用text flags自定义搜索字符串,字符中不能含空格。

b) TextPfx:要搜索的字符串的直接前缀。

c) TextSfx:要搜索的字符串的直接后缀。

d) Search:搜索的范围。可选的值是:Headers 、Body(在请求体中搜索)、Noresource (仅仅在HTML请求体中搜索,不包括头和资源)、ALL (在请求体、头和资源中搜索),默认值是“BODY”。

e) SaveCount:匹配的个数。

f) Fail:设置函数检查在什么状态下失败。

g) ID:日志文件中标识此函数的一个字符串。

h) RelFrameId:相关联的FrameId。注意:此参数在GUI级别的脚本中不受支持。

2、LAST:属性列表结束的标记符。

返回值
 整型。成功时返回LR_PASS(0),失败时返回LR_FAIL(1)。

说明
web_reg_find属于注册函数,注册一个在web页面中搜索文本字符串的请求,在接下来的Action(例如:web_url)类函数中执行搜索。

通过查找期望的字符是否存在来验证是否返回了期望的页面。例如,通过查找“Welcome”来检查主页是否完全打开了。也可以查找“Error”检查浏览器是否发生错误。还可以使用此函数注册一个请求来统计特定字符串出现的次数。

如果检查失败,在接下来的Action类的函数中会报告错误。此函数仅仅注册请求,并不执行。函数的返回值只表明注册是否成功,并不表示检查的结果。

此函数不仅能够查找text,还能查找到围绕着text的strings。不要同时指定text和前缀后缀。

Fail,处理选项,可以是“Found或“NotFound”。默认是“NotFound”。

“Fail=Found” 指示当对应的字符找到时,函数检查失败。例如,查找单词“Error”,如果找到了,说名web请求没有成功,你想把函数检查设置为失败。

“Fail=NotFound”指示当对应的字符找不到时,函数检查失败。如果查找的是web请求成功时出现的字符串时,需要使用NotFound。

SaveCount参数指示保存到参数中的匹配的字符串的个数。使用这个属性,需要指定“SaveCount=param”。检查操作被执行后,param 的值是null结尾的数字类型的值。

如果指定了SaveCount,且没有使用Fail参数,检查不会失败,无论需要查找的字符串是否找到。通过检查SaveCount的值确定字符串是否被找到。如果param是0,说明没有找到对应的字符串。

如果同时指定了SaveCount和Fail,指定的错误处理选项和SaveCount协同工作。 handling option specified works together with the SaveCount. Thus,如果指定了SaveCount且指定了“Fail=NotFound” ,但是字符串被找到,SaveCount被赋值为字符串出现的次数,检查成功。如果字符串找不到,SaveCount被赋值为0,检查失败(注意,参数的0值只在运行时设置中Continue on error 选中时才有意义)。

此函数在HTML-based和URL-based的脚本中都可以使用。此函数是在所请求内容到达之前注册搜索请求的,所以当所请求内容一到达后就会执行搜索,产生的脚本比较高效。


最后去掉检查点中text中的空格



TAG: error Error highest ERROR

 

评分:0

我来说两句

Open Toolbar