LR回放时跳过的坑-手动关联

上一篇 / 下一篇  2017-04-17 21:03:52 / 天气: 晴朗 / 心情: 高兴 / 精华(1) / 置顶(1)

前期提要:

先来说一下当时的情况:本着录制脚本来学习的态度,录制了一段LR自带的B/S系统——Webtours,脚本里包括打开首页(int),用户登录(action),用户退出(end),在用户登录的一段脚本前后设置事务。

遇到的坑——回放时登录失败:

点击回放按钮,查看到登录事务的运行状态为“pass”,可真的是登录成功了。在这段脚本前后加上日志函数(lr_set_bug_message),再次回放,仔细查看replay logs里的response headers和response body,却是一些登录失败的一些信息,真是给了自己一击重锤,到现在也明白了,为什么以前的检查点总是找不到内容的关键了(并非函数格式或服务器闹脾气)。突然看到回放时的userSession和录制的不一致,原来是这个小鬼在作怪。

跳坑过程——设置关联函数

想起一些在HTML页或者请求时的变量需要关联来解决;于是去某度了解要用到关联函数,在LR帮助文档上学习它的使用(官方很重要),关联函数加在打开首页函数前,代码如下:

web_reg_save_param("userSession",  
"LB=name=userSession value=",
  "RB=>",
  LAST);

web_url("WebTours", 

"URL=http://127.0.0.1:1080/WebTours/", 
"Resource=0", 
"RecContentType=text/html", 
"Referer=", 
"Mode=HTML", 
LAST);
在登录请求前,就获得userSession的值,然后将该值关联到请求函数(web_submit_data)中,并在请求设置检查点函数,以此来验证登录是否成功。代码如下:
lr_start_transaction("login");
web_reg_find("Fail=notfound",
	     "Search=Body",
	     "Text=Flights",
	     LAST);

lr_set_debug_message(16|2,1);

web_submit_data("login.pl_2", 
		"Action=http://127.0.0.1:1080/WebTours/login.pl", 
		"Method=POST", 
		"RecContentType=text/html", 
		"Referer=http://127.0.0.1:1080/WebTours/nav.pl?in=home", 
		"Snapshot=t13.inf", 
		"Mode=HTML", 
		ITEMDATA, 
		"Name=userSession", "Value={userSession}", ENDITEM, 
		"Name=username", "Value=jojo", ENDITEM, 
		"Name=password", "Value=bean", ENDITEM, 
		"Name=JSFormSubmit", "Value=off", ENDITEM, 
		"Name=login.x", "Value=76", ENDITEM, 
		"Name=login.y", "Value=15", ENDITEM, 
		LAST);

lr_set_debug_message(16|2,0);

lr_end_transaction("login",LR_AUTO);
replay logs下,响应体和检查点函数执行情况截图请看附件。

LR学习小结:

LR工具从接触到如今,已经快一年时间,可是进展不太如意,因此要更加努力和用心地去学习,更加系统地弄清其前因后果。呵呵,最近买的工具书_LR 11实战又休息几天,真是惭愧了。控制自己,掌控命运。铲除“两天打渔,三天晒网”的恶心,向着心中的职业规划之路前进。

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2017-04-24  
      1
2345678
9101112131415
16171819202122
23242526272829
30      

数据统计

  • 访问量: 105
  • 日志数: 1
  • 建立时间: 2016-12-06
  • 更新时间: 2017-04-17

RSS订阅

Open Toolbar