zoukankan      html  css  js  c++  java
  • 使用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.结果展示 

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

     

    关联的参数就获取了

  • 相关阅读:
    简单工厂模式
    工厂方法模式
    Linq对DatatTable进行分组统计
    微软现在支持某一路径下?占位符的文件扫描
    Spring MVC中InternalResourceViewResolver视图解析器的默认行为
    什么是 HandlerMethod ?
    03基于NIO的聊天室案例
    01基于BIO的多人聊天室
    02基于BIO的多线程客户端服务器通信案例
    java8新特性学习
  • 原文地址:https://www.cnblogs.com/chongyou/p/7712068.html
Copyright © 2011-2022 走看看