int web_find( const char *StepName, <Attributes and Specifications list>, char *searchstring, LAST ); 
 
StepName:步骤名称,必选
Attributes and Specifications list:属性列表,可选
    expect:定义返回成功的标准,found(默认)-表示找到字符串返回成功,notfound-表示未找到字符串返回成功
    Matchcase:是否区分大小写,yes-表示区分大小写,no(默认)-表示不区分大小写
    report:定义结果报告的内容,success-只包含成功,failure-只包含失败,always(默认)-包含所有
    onfailure=abort:失败则终止脚本运行
    RightOf:从指定字符串的右边开始查找
    LeftOf:从指定字符串的左边开始查找
searchstring:查找的字符串,格式为:"What=stringxyz",必选
LAST:结束标记,必选
 
 

WebTours登录后页面展示的内容:

Welcome, jojo, to the Web Tours reservation pages.
Using the menu to the left, you can search for new flights to book, or review/edit the flights already booked. Don't forget to sign off when you're done!
 
 
1、web_find之expect属性:
Action()
{ web_url("WebTours",
"URL=http://127.0.0.1:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t34.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST); web_submit_form("login.pl",
"Snapshot=t35.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=52", ENDITEM,
"Name=login.y", "Value=11", ENDITEM,
LAST); web_find("web_find",
//期望返回成功的结果是找到字符串,因当前页面包含要查找的字符串,故返回结果是成功
"expect=found",
//当前页面中查找字符串"jojo"
"What=jojo",
LAST); web_find("web_find",
//期望返回成功的结果是未找到字符串,因当前页面包含要查找的字符串,故返回结果是失败
"expect=notfound",
//当前页面中查找字符串"jojo"
"What=jojo",
LAST); return ;
}

代码执行结果:

Action.c(24): "web_find" successful. 1 occurrence(s) of "jojo" found (RightOf="", LeftOf="")   [MsgId: MMSG-27196]

Action.c(24): web_find was successful   [MsgId: MMSG-26392]

Action.c(31): Error -27195: "web_find" failed. 1 occurrence(s) of "jojo" found (RightOf="", LeftOf="")   [MsgId: MERR-27195]

Action.c(31): web_find highest severity level was "ERROR"   [MsgId: MMSG-26391]

 
 
2、web_find之Matchcase属性:
Action()
{ web_url("WebTours",
"URL=http://127.0.0.1:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t34.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST); web_submit_form("login.pl",
"Snapshot=t35.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=52", ENDITEM,
"Name=login.y", "Value=11", ENDITEM,
LAST); web_find("web_find",
//区分大小写,因当前页面不包含JOJO,故返回结果是失败
"Matchcase=yes",
//当前页面中查找字符串"JOJO"
"What=JOJO",
LAST); web_find("web_find",
//不区分大小写,因当前页面包含jojo,故返回结果是成功
"Matchcase=no",
//当前页面中查找字符串"JOJO"
"What=JOJO",
LAST); return ;
}

代码执行结果:
Action.c(24): Continuing after Error -27195: "web_find" failed. 0 occurrence(s) of "JOJO" found (RightOf="", LeftOf="")   [MsgId: MERR-27195]
Action.c(24): web_find highest severity level was "continue on error"   [MsgId: MMSG-26391]
Action.c(24): Continuing after error in Vuser script.
Action.c(31): "web_find" successful. 1 occurrence(s) of "JOJO" found (RightOf="", LeftOf="")   [MsgId: MMSG-27196]
Action.c(31): web_find was successful   [MsgId: MMSG-26392]
 
 
3、web_find之onfailure属性:
Action()
{ web_url("WebTours",
"URL=http://127.0.0.1:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t34.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST); web_submit_form("login.pl",
"Snapshot=t35.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=52", ENDITEM,
"Name=login.y", "Value=11", ENDITEM,
LAST); web_find("web_find",
//如果函数返回结果失败,则终止脚本运行,根据运行结果可以发现,第二个web_find没有运行
//注意:Continue on Error 设置了才能看到效果,否则的话,不管是否有该属性都会终止运行
"onfailure=abort",
//当前页面中查找字符串"JOJO"
"What=jojo1",
LAST); web_find("web_find",
//当前页面中查找字符串"JOJO"
"What=jojo",
LAST); return ;
}
 
代码运行结果:
Action.c(24): Fatal Error -27195: "web_find" failed. 0 occurrence(s) of "jojo1" found (RightOf="", LeftOf="")   [MsgId: MERR-27195]
Action.c(24): web_find highest severity level was "FATAL ERROR"   [MsgId: MMSG-26391]
Abort was called from an action.
 
 
4、web_find之LeftOf、RightOf属性:
Action()
{ web_url("WebTours",
"URL=http://127.0.0.1:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t34.inf",
"Mode=HTML",
EXTRARES,
"Url=../favicon.ico", "Referer=", ENDITEM,
LAST); web_submit_form("login.pl",
"Snapshot=t35.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=52", ENDITEM,
"Name=login.y", "Value=11", ENDITEM,
LAST); web_find("web_find",
//从, to the Web左边查找jojo
"LeftOf=, to the Web",
//从Welcome右边查找jojo
"RightOf=Welcome, ",
"What=jojo",
LAST); return ;
}

代码运行结果:
Action.c(24): "web_find" successful. 1 occurrence(s) of "jojo" found (RightOf="Welcome, ", LeftOf=", to the Web")   [MsgId: MMSG-27196]
Action.c(24): web_find was successful   [MsgId: MMSG-26392]

loadRunner函数之web_find的更多相关文章

  1. LoadRunner 函数大全之中文解释

    LoadRunner 函数大全之中文解释 // sapgui_table_set_column_selected 模拟用户 // 单击表中的列标题. int sapgui_table_set_colu ...

  2. LoadRunner函数百科叒叒叒更新了!

    首先要沉痛通知每周四固定栏目[学霸君]由于小编外派公干,本周暂停. 那么这周就由云层君来顶替了,当然要要说下自己做的内容啦,DuangDuang! <LoadRunner函数百科>更新通知 ...

  3. myeclipse调用loadrunner函数开发测试脚本

    myeclipse调用loadrunner函数开发测试脚本 一.使用myeclipse开发性能测试脚本 1.使用Eclipse新建一个Java工程,将目录%LoadRunner_Home%\class ...

  4. LoadRunner函数大全之中文解释

    LoadRunner函数大全之中文解释

  5. 软件测试中LoadRunner函数中的几个陷阱

    软件测试 中 LoadRunner 函数中的几个陷阱 1.atof 在 loadrunner 中如果直接用 float f; f=atof("123.00"); lr _outpu ...

  6. LoadRunner函数的介绍

    LoadRunner函数的介绍 LoadRunner函数 一:通用函数 LoadRunner的通用函数以lr为前缀,可以在任何协议中使用.可以如下分类: 信息相关的函数: lr_error_messa ...

  7. LoadRunner函数

    一.基础函数简介 在VU左边导航栏中,有三个LoadRunner框架函数,分别是vuser_init().Action().vuser_end().这三个函数存在于任何Vuser类型的脚本中. vus ...

  8. LoadRunner函数示例:lr_paramarr_random()

    lr_paramarr_random()函数的作用为:从一个参数数组中随机抽取一个值并以字符串形式返回.其使用方式及返回方式如下: char * lr_paramarr_random( const c ...

  9. loadrunner函数解密之web_reg_save_param

    loadrunner工具的使用,最关键的在于3个地方: A:脚本的编写 B:场景设计 C:性能测试结果分析 其 中难度比较大的第一步是:编写脚本,有很多人对于loadrunner里面的各种函数使用的并 ...

随机推荐

  1. Delphi 运行后错误提示“无效的授权说明”

    Delphi 运行后错误提示“无效的授权说明” 一般情况是:数据库的连接出现了问题. 解决方法:检查加载数据库是否正常,能否正常连接.

  2. 如何在Ubuntu下搭建tftp服务器

    远程桌面连接工具   今天开始调试arm的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了… (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次t ...

  3. 网络体系应用层之万维网、http协议

    1.万维网概述 万维网以客户--服务器方式工作,万维网客户程序就是各式各样的浏览器,万维网文档所驻留的主机则运行服务器程序, 因此这个主机也称为万维网服务器.客户程序向服务器程序发出请求,服务器程序向 ...

  4. JS中正则表达式

    正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具.简单来说正则表达式就是处理字符串的,我们可以用它来处理一些复杂的字符串. 1.创建方式 pattern(模式):描述了表达式 ...

  5. StrictMode 严格模式

    StrictMode: 帮助程序员避免在主线程上执行耗时操作: 启动级别: 1. 启动线程级别:   setThreadPolicy() 2. 启动应用级别 :  setVmPolicy() —— 对 ...

  6. Radical and array

    Radical and array 时间限制: 1 Sec  内存限制: 128 MB提交: 46  解决: 27[提交][状态] 题目描述 Radical has an array , he wan ...

  7. WCDB错误"No matching constructor for initialization of 'WCTColumnBinding'"

    开始看到这个错误有点匪夷所思,完全不知道问题指向哪里, 最后用过排除法,把之前建立多个类进行了一一排除,发现有个属性是 @property(nonatomic, assign) NSInteger * ...

  8. 2018-2019-2 20175126谢文航 实验四《Android开发基础》实验报告

    一.实验封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年5月15日 实验时间:--- 实验序号:实验四 实验名称:Andr ...

  9. Hibernate:More than one row with the given identifier was found解决办法

    今天写一个Action 通过 HQL 查询一个表 出现异常 “More than one row with the given identifier was found” 问题原因: 数据库出现数据异 ...

  10. linux 命令参数列表过长以及find用法

    1.在一个目录下删除大批量的文件时,当使用 rm -rf 或者rm *会提示参数列表过长   通过修改命令为 :find . -name "*" | xargs rm -rf '* ...