Chinaunix首页 | 论坛 | 博客
  • 博客访问: 743154
  • 博文数量: 769
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 4985
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 16:37
文章分类

全部博文(769)

文章存档

2011年(1)

2008年(768)

我的朋友

分类:

2008-10-15 16:45:14

       今天我来总结一下Loadrunner中的检查点函数,主要介绍两个函数:web_find()和web_reg_find()

    这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:

    一、web_find()函数

    该函数的作用是“在页面中查找相应的内容”,常用参数及含义如下:

    web_find("web_find",    //定义该查找函数的名称
    ,O v6R\t;\5V p0              "RightOf=a",       //定义查找字符的右边界

                  "LeftOf=b",        //定义查找字符的左边界

                  "What=name",      //定义查找内容

                  LAST);

    使用该函数注意以下事项:

    1、  位置

    该函数在页面内容显示出来以后,在页面中进行查找,所以只能写在要查找内容之后

    2、  录制模式

    该函数只能在基于HTML模式录制的脚本中进行查找

    3、  必须启用内容检查选项

    在runtime setting->Preferences里面,把Enable image and text check选中,否则不执行该查找函数

    4、  在VB和JAVA语法中不支持该函数

    该函数有以下一个缺点:

    1、  执行效率较低

    2、  不返回查找结果情况,如想在执行该函数后根据查找结果做进一步操作时,没有返回值可以依据

    例如:

    在页面中查找“登录成功”的字符串,如果找到该字符串在日志中输出“登录成功”,如果找不到该字符串,则在日志中输出“登录失败”,此时使用该函数没有依据来做此判断,但使用web_reg_find()函数,使用它其中的SaveCount可以进行判断,具体方法我们下面介绍。

    二、web_reg_find()函数

    该函数的作用是“在缓存中查找相应的内容”,常用参数及含义如下:

  web_reg_find("Search=Body",   //定义查找范围

                  "SaveCount=ddd",             //定义查找计数变量名称

                  "Text=aaaa",                  //定义查找内容

                  LAST);

              

    使用该函数注意以下事项:

    1、  位置

    该函数写在要查找内容的请求之前,通常情况下写在如下六个函数之前:

    Web_castom_request();web_image();web_link();web_submit_data();web_submit_form();web_url()

    2、  使用技巧

    在该函数的参数中有个“SaveCount”,该参数可以记录在缓存中查找内容出现的次数,我们可以使用该值,来判断要查找的内容是否被找到,下面举个例子来说明:(引用LR的帮助中的例子)

   // Run the Web Tours sample

           web_url("MercuryWebTours",

                  "URL=http://localhost/MercuryWebTours/",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=",

                  "Snapshot=t1.inf",

                  "Mode=HTML",

                  LAST);

    // Set up check for successful login by looking for "Welcome"

           web_reg_find("Text=Welcome",

                  "SaveCount=Welcome_Count",

                  LAST);

    // Now log in

           web_submit_form("login.pl",

                  "Snapshot=t2.inf",

                  ITEMDATA,

                  "Name=username", "Value=jojo", ENDITEM,

                  "Name=password", "Value=bean", ENDITEM,

                  "Name=login.x", "Value=35", ENDITEM,

                  "Name=login.y", "Value=14", ENDITEM,

                  LAST);

    // Check result

           if (atoi(lr_eval_string("{Welcome_Count}")) > 0){    //判断如果Welcome字符串出现次数大于0

                  lr_output_message("Log on successful.");  }//在日志中输出Log on successful

            else{ //如果出现次数小于等于

                  lr_error_message("Log on failed"); //在日志中输出Log on failed

                  return(0);         }

    

    我觉得这个方法非常有用,我们可以举一反三,应用到我们实际的项目中

    三、插入函数的方法

    1、  手工写入,在需要插入函数的位置手工写入该函数

    2、  光标停留在要插入函数的位置,在INSERT菜单中,选择new step,在列表中选择或查找要插入的函数,根据提示填写必要的参数

    3、  在tree view模式下,在树状菜单中选中要插入函数的位置,右键,选择insert after或insert before,根据提示填写必要的参数

    四、总结

    1、  这两个函数函数类型不同,WEB_FIND是普通函数,WEB_REG_FIND是注册函数

    2、  WEB_FIND使用时必须开启内容检查选项,而WEB_REG_FIND则不没有此限制

    3、  WEB_FIND只能只用在基于HTML模式录制的脚本中,而WEB_REG_FIND没有此限制

    4、  WEB_FIND是在返回的页面中进行内容查找,WEB_REG_FIND是在缓存中进行查找

    5、  WEB_FIND在执行效率上不如WEB_REG_FIND

 

【责编:Zenghui】

--------------------next---------------------

阅读(495) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~