; ;

使用loadrunner 12 手动关联

关联的含义:

如浏览器打发送一个网页A请求,服务器返回这个请求,并且在返回的内容中携带一个session id=key,当浏览器再送出网页B的请求时,这时就要用ID=key的数据,服务器才会认为这是合法的请求,并且把网页B的内容送回给浏览器。而我们使用loadrunner进行回放时情景,浏览器再送出网页B的请求时,用的还是当初录制的ID=key的数据,而不是用服务器新给的ID,这样就没有办法建立通信,,因为每个请求,服务器都会返回新内容,而客户端也应该获取到新内容,才能和服务端进行匹配,不然执行脚本失败

解决方案:

获取每次请求变化的seesionid,获取最新的服务端session id

现在我使用loadrunner12 中自带的的“飞机购票” 进行获取动态关联

其实手动关联,总结,就是自动关联找不到的内容,或者是你自己想要的自定义内容,使用函数web_reg_save_param_ex("ParamName=text", "LB=<B>sign ", "RB=now</B>", LAST);将想要的内容存到一个lr变量中,给后面的任何值做替换使用。

 

1.获取登录的session

点击登录时,查看源,找到变化的seesion id

我们发现我们现在使用userSession 是一个变化的东西(为什么知道会变化,你重新打开页面对比他的value值就知道了)那我们就需要获取这个变化值,如何获取

关联函数

web_reg_save_param_ex
参数:
ParamName=“项目名”   LB=userSession\" value\="  (Lb就代表变化值左边的参数,注意符号要进行转义) RB=>"(就是变化值右边的参数)

2.代码实现

Action()
{
	//关联内容
	web_reg_save_param_ex("ParamName=userSession", "LB=userSession\" value\=","RB=>",LAST);
	
	//打开页面的url
	web_url("index.htm", 
		"URL=http://127.0.0.1:1080/WebTours/index.htm", 
		"Resource=0", 
		"RecContentType=text/html", 
		"Referer=", 
		"Snapshot=t1.inf", 
		"Mode=HTML", 
		LAST);
	//打印关联的内容
	lr_output_message(lr_eval_string("{userSession}"));
	return 0;
}

 3.结果展示 

在运行一次看获取结果,同样获取了变化的值

 

关联的参数就获取了

posted @ 2017-10-22 21:44  做梦的人-  阅读(6739)  评论(0编辑  收藏  举报