loadrunner 脚本优化-检查点设置
脚本优化-检查点设置
by:授客 QQ:1033553122
VuGen判断脚本是否执行成功是根据服务器返回的状态来确定的,如果服务器返回的是HTTP状态为200 OK,那么VuGen就认为脚本正确地运行了,并且是运行通过的。而大多数系统出错时是不会返回错误页面的,而是返回一个消息提示框,来提升用户体验感。
检查点函数,能够对服务器返回的内容进行检查,比如验证网页上是否存在指定的Text或者Imag
l、文本检查点
函数一:web_reg_find()
web_reg_find()文本检查点函数提供了一种对服务器返回内容进行查询的功能,和关联的不同之处在于检查点函数只能返回检索到内容的次数
注意:
1.该检查点函数为注册型函数,注册型函数一定要写在请求前
2.函数在缓存中查找相应的内容,即无须等待html页面内容显示出来就可查找
Insert->new step>web_reg_find(),打开图示窗口
说明:
Search
for specific Text
需要查询的标准文本,该功能和word中的查找功能十分相似。在服务器返回的内容中查找特定的字符串,内容支持参数化,并且支持和关联相同的通配符和识别方式。输入需要查找的字符串即可,检查点函数将会在服务器返回中对该字符串进行查找
Search
for Text by start and end of string
提供根据左右边界进行查找的功能
Search
in
设置在服务器返回的哪部分数据中进行查询,这里提供了All,Headers,Body三个选项,和关联选项相同。
Save
count
文本检查点特别之处,记录查找内容的出现次数并且存放到一个参数中,可以填写一个参数名称来存放计数结果。
Fail
if
设置在什么情况下文本检查点函数错误。如果选择Found,表示如果在服务器返回中存在需要检查的对象,那么文本检查点函数出错;选择NotFound则相反,如果没找到对应的内容,那么文本检查点函数出错。
检查点函数的错误会导致整个脚本运行结果的失败,通过这个功能可以方便地定位脚本运行中的逻辑错误。
示例:通过文本检测,判断登录是否成功
测试脚本
Action2()
{
//打开登录页面
web_url("WebTours",
"URL=http://172.25.75.2:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
lr_think_time(2);
//插入检查点函数
web_reg_find("Fail=NotFound",
"Search=All",
"SaveCount=login_times",
"Text=reservation pages",
LAST);
//提交登录
web_submit_form("login.pl",
"Snapshot=t2.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=49", ENDITEM,
"Name=login.y", "Value=6", ENDITEM,
LAST);
return 0;
}
运行结果:
有时候,确保每个请求中都包含一个检查信息,而手动添加很麻烦,这个时候可以使用自动检查点规则,通过建立一个新的规则,可以在回放时对所有的内容进行检查工作。
打开
Run-time Settings/ContentCheck
单击New
Appication按钮来添加一个应用,然后在这个应用下添加对应的规则,单击New
Rule按钮,这里可以在这里添加一个检查规则。在Search
for Text中填写test,设置Fail
if为Not
Found,如果运行脚本时,返回页面的代码中没有包含test时,就可看到错误,否则无提示,自动通过检查点。
详情参见:运行脚本-Run-time
Settings-ContentCheck简单设置
函数二:web_find()
和web_reg_find功能类似,主页区别在于:该函数“从HTML页面中查找指定的文本字符串”,
注意:
1.该函数在请求的页面内容完全显示出来以后,在页面中进行查找,所以只能写在打开页面的动作之后,执行效率较低
2.
需要打开内容检查选项 打VuGen组件,选择Vuser->runtime
setting->Preferences,勾选Enable
image and text check,否则将不执行该查找函数;
3.在VB和JAVA语法中不支持该函数
4.无返回结果,不利于后续处理
示例:
Insert->New
Step,弹出窗中选择Text
Check,点击OK
注意:这里要搜索的字符串可以使用正则表达式。
说明:
Search for:要查找的内容
Right of:要查找内容的右边界
Left of:要查找内容的左边界
Setp Name:该次操作的名称,最好能见名知意
Action2()
{
//打开登录页面
web_url("WebTours",
"URL=http://172.25.75.2:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
lr_think_time(2);
//提交登录
web_submit_form("login.pl",
"Snapshot=t2.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=49", ENDITEM,
"Name=login.y", "Value=6", ENDITEM,
LAST);
//插入检查点函数
web_find("find_reservation_after_login",
"RightOf=Tours",
"LeftOf=pages",
"What=reservation",
LAST);
return 0;
}
运行结果:
2、图片检查点
通过web_image_check()函数可以检查页面上的图片。
web_image_check(“函数标题”,”ALT=图片说明”,LAST);
注意:图片检查点函数必须在Run-time
Settings中打开Preferences下的Enable
Image and text check才有效果。
示例:Insert->New
Step,打开对话框中选择Image
Check,点击Ok,如下
Action2()
{
//打开登录页面
web_url("WebTours",
"URL=http://172.25.75.2:1080/WebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
lr_think_time(2);
//提交登录
web_submit_form("login.pl",
"Snapshot=t2.inf",
ITEMDATA,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=login.x", "Value=49", ENDITEM,
"Name=login.y", "Value=6", ENDITEM,
LAST);
//插入检查点函数
web_image_check("find_image_flights",
"Src=/WebTours/images/flights.gif",
LAST);
return 0;
}
运行结果:
loadrunner 脚本优化-检查点设置的更多相关文章
- loadrunner 脚本优化-关联设置
脚本优化-关联设置 by:授客 QQ:1033553122 关联的原理 关联也属于一钟特殊的参数化.一般参数化的参数来源于一个文件.一个定义的table.通过sql写的一个结果集等,但关联所获得的参数 ...
- loadrunner 脚本优化-事务时间简介
脚本优化-事务时间简介 by:授客 QQ:1033553122 事务概念 事务是指用户在客户端做一种或多种业务所需要的操作集(actions),通过事务开始和结束函数可以标记完成该业务所需要的操作内容 ...
- loadrunner 脚本优化-参数化之Parameter List参数同行取值
脚本优化-参数化之Parameter List参数同行取值 by:授客 QQ:1033553122 select next row 记录选择方式 Same line as,这个选项只有当参数多余一个时 ...
- loadrunner 脚本优化-集合点设置
脚本优化-集合点设置 by:授客 QQ:1033553122 添加集合点(Insert->Rendezvous) 当一个集合点被插入,VuGen往Vuser脚本中插入一个lr_rendezvou ...
- LoadRunner脚本优化之—参数化迭代介
在LoadRunner的脚本优化时,有时发送给服务器的请求参数化时,服务器返回的内容也会和参数化的内容相对应,例如发送的请求带有查询key=123,则服务器也会返回含有123相关的内容.这时我们在使用 ...
- loadrunner 脚本优化-参数化方法
脚本优化-参数化方法 by:授客 QQ:1033553122 方法一 1.确定需要参数化的内容 2.选中需要参数化的内容 3.右键选中的内容->Replace with a Parameter- ...
- Loadrunner 脚本优化-事务函数简介
脚本优化-事务函数简介 by:授客 QQ:1033553122 1.事务的开始和结束名称需要相同 lr_start_transaction(“transaction_name”); …//事务处理 l ...
- loadrunner 脚本优化-参数化之场景中的参数化取值
脚本优化-场景中的参数化取值 by:授客 QQ:1033553122 Action() { lr_eval_string("{NewParam}"); lr_eval_stri ...
- loadrunner 脚本优化-加密与解密
脚本优化-加密与解密 by:授客 QQ:1033553122 密码加密 可以给密码加密,意在把结果字符串作为脚本的参数或者参数值.例如,完整可能有一个用户密码填写的表单,你想测试网站针对不同密码的 ...
随机推荐
- 网页的异步请求(Ajax)
JS原生Ajax操作(XMLHttpRequest) GET请求 var xmld=new XMLHttpRequest(); xmld.open("GET","wan. ...
- 过了所有技术面,却倒在 HR 一个问题上。。
面试问离职原因,这是我们广大程序员朋友面试时逃不开的问题,如果答得不好,可能就影响了你整个的面试结果. 最近在栈长的Java技术栈vip群里,我也看到大家在讨论这个问题,其中有个朋友的回复栈长很有感触 ...
- 破解第二课 JMP法
首先,我用录屏大师自制了一个视频,给视频加上密码.任意输入,看到报错信息“密码不对,请重新输入” 第一步 反汇编窗口右键点击“中文搜索引擎”---“智能搜索”,搜索引擎界面再次搜索“不对”,结果如下: ...
- 微信小程序开发-第一弹
前言: 本篇文章为大家详细介绍微信小程序开发第一篇,后续步骤会逐步更新,欢迎大家关注. 第一步 注册 1.1 打开网址 https://mp.weixin.qq.com/ ...
- Xamarin.Android 隐藏软键盘
引用: using Android.Views.InputMethods; 代码: //隐藏键盘 InputMethodManager imm = (InputMethodManager)GetSys ...
- Xamarin.Android 上中下布局
xml代码: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:and ...
- Python快速学习04:循环 & 函数
前言 系列文章:[传送门] 也就今天认识了 LC ,很开心. 本文目录 循环 for while 中断 函数 函数定义 函数调用 for循环 Python 中的for 循环象shell 脚本里的for ...
- [译].NET Framework 4.8发布
原文地址:https://devblogs.microsoft.com/dotnet/announcing-the-net-framework-4-8/ 我们很高兴地宣布今天发布.NET Framew ...
- vue-14-less 语法的使用
vue-15-rem-less 在计算手机端页面的时候, 使用rem和less的方式, 可以方便的设置需要的大小等 1, 在index.html中添加rem的script 代码 在head中添加 &l ...
- TCP中往返时间的估计与超时
往返时间的估计与超时 TCP采用超时/重传机制来处理报文段的丢失问题.尽管这在概念上面很简单,但是在实际中还是会产生很多微妙的问题.最明显还是超时时间间隔的设置.很显然,这个时间间隔肯定会大于RT ...