收藏本站 收藏本站
积木网首页 - 软件测试 - 常用手册 - 站长工具 - 技术社区
软件测试 > LoadRunner > 正文

首页 | 领域细分: 游戏测试 安全测试 手机测试 Web测试 | 技术研究: 单元测试 入门教程 用例设计 性能测试 功能测试 | 测试职场: 面试精选 职场发展 面试试题

测试管理: 配置及流程 - 需求管理 - 质量验收 - 缺陷管理 - 其它管理相关 | 开发语言: PHP技巧 - PHP基础 - PHP实例 - PHP错误代码

测试工具: LoadRunner JiRa QuickTestPro RoBot WinRunner TestDirector 其它测试工具 | 数据库: Mysql数据库 Oracle数据库 CSS/DIV基础 HTML基础

LoadRunner检查点使用小结

来源:互联网 日期:2014-06-18 07:30

  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模式录制的脚本中进行查找。

  2、web_reg_find()函数

  函数作用:在缓存中查找相应的内容

  参数举例:web_reg_find("Search=Body","SaveCount=ddd","Test=aaa",LAST);

  参数解释: Search用来定义查找范围,SaveCount定义查找计数变量名称,该参数可以记录在缓存中查找内容出现的次数,可以使用该值,来判断要查找的内容是否被找到

  例如上述参数举例中的意思就是Body中查找内容为aaa的信息,并将出现次数记录在变量ddd中。

  函数用法:该函数是在缓存中查找相应的内容,所以要放在查找内容之前。

  注:在录制过程中添加的检查点,用到的函数是web_reg_find(),且参数只有“Text=”

  3、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,则输入登录成功的信息。

vuser_init()
{

web_url("xjcost",
"URL=http://gczj-server8:9205/xjcost/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
EXTRARES,
"Url=jsp/images/index/index.swf", ENDITEM,
"Url=jsp/images/index/xxfb2.gif", ENDITEM,
"Url=jsp/images/index/ywpt2.gif", ENDITEM,
LAST);

web_url("userAction.struts",
"URL=http://gczj-server8:9205/xjcost/userAction.struts?actionType=reLogin",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t2.inf",
"Mode=HTML",
LAST);

return 0;
}

Action()
{

lr_start_transaction("Log_on");
lr_rendezvous("Log_on");
web_add_cookie("userAccount=admin; DOMAIN=gczj-server8");

web_reg_find("Text=欢迎您",
"SaveCount=欢迎您_Count",
LAST);

web_image_check("web_image_check",
"Src=/xjcost/jsp/images/index1/edit_01.gif",
LAST);

web_submit_data("userLogin.struts",
"Action=http://gczj-server8:9205/xjcost/userLogin.struts?actionType=userLogin",
"Method=POST",
"RecContentType=text/html",
"Referer=http://gczj-server8:9205/xjcost/userAction.struts?actionType=reLogin",
"Snapshot=t3.inf",
"Mode=HTML",
ITEMDATA,
"Name=userAccount", "Value=admin", ENDITEM,
"Name=pwd", "Value=1111", ENDITEM,
EXTRARES,
"Url=jsp/images/index1/edit_01a.gif", "Referer=http://gczj-server8:9205/xjcost/userLogin.struts?actionType=userLogin", ENDITEM,
LAST);

web_find("web_find",
"What=欢迎您",
LAST);
lr_end_transaction("Log_on",LR_AUTO);

//检查是否登录成功
//如果“欢迎您”这个字符出现次数大于0,输出“Log on successfully!”
if(atoi(lr_eval_string("{欢迎您_Count}"))>0)
lr_output_message("Log on successfully!");
else
lr_error_message("Log on failed!");

return 0;

return 0;
}

//atoi()函数的作用是将一个ASCII字符串转换为整型
//lr_eval_string()函数作用是取得参数值,将字符串变量中的参数值替换为当前的参数值并将这个字符串返回

vuser_end()
{

lr_think_time(4);

web_url("userAction.struts_2",
"URL=http://gczj-server8:9205/xjcost/userAction.struts?actionType=reLogin",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t4.inf",
"Mode=HTML",
LAST);

return 0;
}

Global.h:
#ifndef _GLOBALS_H
#define _GLOBALS_H

//--------------------------------------------------------------------
// Include Files
#include "lrun.h"
#include "web_api.h"
#include "lrw_custom_body.h"

//--------------------------------------------------------------------
// Global Variables

#endif // _GLOBALS_H

  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)查看该函数是否在查找内容的前面。

  原帖地址:http://bbs.51testing.com/thread-158304-1-4.html

版权声明:本文由会员lele8662首发于51Testing软件测试论坛。

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

本周排行

别人正在浏览

强悍的草根IT技术社区,这里应该有您想要的!
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号