LoadRunner怎么request是否执行成功呢?它通过判断服务器返回的HTTP状态码,如果是200 OK,那么VuGen就认为脚本运行通过。
但是很多时候事务执行失败并不一定返回错误的状态码,比如查询时查询到错误的内容,但是页面还是正常呈现的时候LR也会判定该请求执行成功。这种情况下我们就需要用到检查点。
检查点尽量少用。
录制时创建文本检查点
录制过程中,鼠标选中需要需要添加检查点的文本,然后点击录制小窗口的添加文本检查点图标(Insert text check),就可以直接添加检查点。
添加的脚本如下:
web_url("www.baidu.com",
"URL=https://www.baidu.com/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t5.inf",
"Mode=HTML",
LAST);
web_find("Text Check", "What=把百度设为主页", LAST);
注意点:
1. 这里自动添加的是 web_find 函数,该函数使用时必须 打开 Enable Image and text check。
如果不打开,可以看到 Replay Log如下,也就是会跳过 web_find执行。
Verification checks not enabled. web_find is skipped. See the 'Run-time settings/Preferences/Checks'
打开方式:Vuser -> run-time setting-> Internet Protocol –> Preferences
2. 该函数只能在基于HTML模式录制的脚本中进行查找
3. 该函数在页面内容显示出来以后,在页面中进行查找,所以只能写在要查找内容之后
4. 该函数执行效率比下面的函数低,同时也不能返回查找结果情况,不推荐使用该函数,推荐使用下面的web_reg_find函数。
自己写脚本添加文本检查点
在需要添加检查点的地方,右键->Insert –> New Step。
在 Find Function 中搜索 web_reg_find函数。
Search for specific Text: 输入要进行check的文本内容
Search in:有三个选项(All,Headers,Body),表示查询该文本的范围。
Save count:这里可以输入一个变量名,表示将匹配到的次数保存到该变量。
Fail if:可以选择 NotFound 以及 Found。表示什么情况下判定该查找失败。
web_reg_find("Fail=NotFound",
"Search=Body",
"Text=把百度设为主页",
LAST);
web_url("www.baidu.com",
"URL=https://www.baidu.com/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t5.inf",
"Mode=HTML",
LAST);
注意点:
1. 该函数写在要查找的内容的请求之前。
2. web_find 属于普通函数,web_reg_find 属于注册函数。
3. web_find使用时必须开启 Enable Image and text check,而 web_reg_find 没有此限制
4. web_find 只能只用在基于HTML模式录制的脚本中,而 web_reg_find 没有此限制
5. web_find 是在返回的页面中进行内容查找,web_reg_find 是在缓存中进行查找
自己写脚本添加图片检查点
在需要添加检查点的地方,右键->Insert –> New Step。
在 Find Function 中搜索 web_image_check 函数。
Alternative image name:这里输入上面对应的 alt 属性值
Image server file name:这里输入上面对应的 src 属性值
web_image_check("web_image_check","Src=//www.baidu.com/img/baidu_jgylogo3.gif","Alt=到百度首页",LAST);
注意点:
1. 该函数使用时必须 打开 Enable Image and text check。
Vuser -> run-time setting-> Internet Protocol –> Preferences
2. 该函数必须写在需要检查的请求之后。