Web_reg_find()

  1. 此函数的作用,很显然就是能告之测试人员页面是否显示正确,其意义与价值在我此次支撑平台的性能测试得到了体现。

  2. 在使用此函数的过程中,遇到了非常郁闷的事情,幸得老大的帮助才得以跳出误区。
    当在此函数中,查找的text="中文"时,LR硬是报错换成英文字体便成功。后来,查了好久,发觉是Record-Options中我勾选了support charset中的UTF-8,可能是录制过程中LR捕捉到的是中文,而回放过程中此函数在HTML原文件中查找到的却是乱码?总而言之,把此选项去除之后,重新录制脚本,回放能够成功了

  3. 快速定位此函数应插入的位置。切换到树状列表,找到带URL字符串的脚本,点开查看其快照,如果有图形显示,基本可以在此插入检查点了,为了进一步确认可以点右键,选择看其源代码。

下面是51testing上网友总结的,在LR的帮助文档中,也有详尽的描述。

  1. 将脚本切换到树结构,在page view页面上找到你要check的文本内容, 并执行鼠标邮件,选择copy selection.

  2. 将脚本切换回代码界面, 在光标闪烁的上行,添加如下的代码:

备注:光标闪烁的上行: 若光标闪烁行为第10行,那光标闪烁的上行为第9行。

添加的代码根据你检查的方式不同而不同, 你可以选择其中之一即可。

代码一:

web_reg_find("Text=Payment Details",LAST);

代码思路:

  1. “Payment Details” 为你要检查的文本;
  2. 脚本执行到此处,若在页面上找到了这几个字符串,那脚本继续执行下去;若没有找到,脚本将在此报错并且结束

代码二:

web_reg_find("Text=Payment Details", "SaveCount=para_count", LAST); //check 的函数

web_submit_form("reservations.pl_2", //要check的页面的录制时的代码
				"Snapshot=t22.inf",
				ITEMDATA,
				"Name=outboundFlight", "Value=003;0;06/23/2007", ENDITEM, 
				"Name=reserveFlights.x", "Value=61", ENDITEM,
				"Name=reserveFlights.y", "Value=2", ENDITEM,
				LAST);

if (atoi(lr_eval_string("{para_count}"))>0) //验证是否找到了页面上的要检查的字符串
	lr_output_message("we find the string!");
else
	lr_output_message("sorry,don't find the string!");

代码思路:

  1. “Payment Details” 为你要检查的文本;

  2. 脚本执行到此处,不管页面上是否存在你要检查的字符串,脚本都不会报错,而是执行下去

  3. 此段代码将找到的你要检查的字符串的个数,存为一个参数。 然后在页面代码的后面,通过检查这个参数的值是否大于0,来判断是否找到了你所要检查的字符串。

代码三:

A. web_reg_find("Text=Payment Detdils", "Fail=NotFound",LAST);或者

B. web_reg_find("Text=Payment Detdils", "Fail=Found",LAST);

代码思路:

  1. “Payment Details” 为你要检查的文本;

  2. 若是A代码:脚本执行到此处,若没有找到check的字符串,脚本将FAIL, 并且停止执行下去。反之,则一直执行下去。

  3. 若是B代码:脚本执行到此处,若找到check的字符串,脚本将FAIL, 并且停止执行下去。反之,则一直执行下去。


web_reg_find()

在这里插入图片描述

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

web_reg_find("Search=Body",	//定义查找范围
			"SaveCount=count",	//自定义参数,该参数可以记录在缓存中查找内容出现的次数,我们可以使用该值来做判断要查找的内容是否被找到
			"Text=phpwind 9.0",	//定义需要查找内容,一般出现在下一个函数的response里。
			LAST);

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

该函数写在要查找内容的请求之前,通常情况下写在如下六个函数之前:
Web_castom_request();
web_image();
web_link();
web_submit_data();
web_submit_form();
web_url();

3、注意:

(1) web_reg_find 1 要写在web_submit_data 2 之前;
(2) 如果想知道具体是多少次,可以在调试的时候打印日志:放在web_submit_data 之后 如 3

 lr_output_message("phpwindcount=%d",atoi(lr_eval_string("{phpwindcount}")));

(3) 验证是否找到了页面上的要检查的字符串 如 4 ,这个判断要放在函数 web_submit_data之后

if (atoi(lr_eval_string("{para_count}"))>0)       
    lr_output_message("Pass!");
 else
  lr_output_message("Failed!");

查找字符串“ABC”,如果文本字符串未被查找到,则脚本执行Action A;如果文本字符串被查找到1次或多次,则脚本执行Action B。

web_reg_find("Text=ABC", "SaveCount=abc_count", LAST ); 
web_url("Step", "URL=...", LAST ); 
if (strcmp(lr_eval_string("{abc_count}"), "0") == 0) 
Action A 
else 
Action B

如果顺序放反了,会报错,注意这几点。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值