摘要:Loadrunner是一种很好的性能测试工具,它经过对建立Vuser脚本、定义场景、运行场景、分析结果四大模块来进行性能负载测试。html
在回放脚本时有时会出现运行不成功的状况,有多是由于以前所录制的参数与现实的不一致的缘由,好比说Session不一致的状况。这种状况下能够利用关联来解决web
关联:客户端须要从服务端返回的数据中获取部分数据,并将这部分数据处理后做为本身下一次请求的一部分发出服务器
session:session
一、客户端发送请求登录页面函数
二、服务器返回登录页面及会话ID即SessionID工具
三、客户端再次发送请求时把SessionID做为标识一块儿发出性能
自动关联:测试
一、在回放失败页上点击“Show and resolve dynamic server values”网站
二、接上一操做,选择Correlation Results中的Action进行Correlationspa
手动关联:
主要操做步骤:
一、 “找到须要关联的字符串及其详细信息”
二、 “添加 web_reg_save_param_* 函数”
三、 “使用参数替换数据”
具体操做实例:HP Loadrunner自带HP Web Tours网站关联会话ID问题
一、设置录制脚本为全部request和response:Tools->Reording Options->Recording->URL-based script
二、录制两次脚本,使用WDiff进行比较,即在第二次录制后,选择:Tools->Compare with script,选择第一次所保存的脚本
WDiff 中显示的小黄条即两次脚本不一致的地方,小黄条中的红色即具体不一样的地方(PS,若是没有看到红色标识能够选择:Options->View->Show Inline Differences)
三、复制当前脚本与原脚本不一致的地方,回到Generation Log中查找,看是哪个response返回这个不一致的值,再记录此值出如今response的位置和先后值,查找是哪一个request引发返回
四、单击“View Script”,在3中查找到的函数前增长关联注册函数,在请求函数后的响应中查找所须要的值
以下如示,Session为参数名,LR为响应中参数值的左值,RB为响应中参数值的右值,Search=Body表示参数值在Response中的位置是在Body中
web_reg_save_param("Session", "LB=value=", "RB=>", "Search=Body", LAST);
五、把脚本中所用到此参数值的数据进行修改:
以下图中的:{Session}
web_submit_data("login.pl", "Action=http://localhost:1080/WebTours/login.pl", "Method=POST", "RecContentType=text/html", "Referer=http://localhost:1080/WebTours/nav.pl?in=home", "Snapshot=t2.inf", "Mode=HTML", ITEMDATA, "Name=userSession", "Value={Session}", ENDITEM, "Name=username", "Value=jojo", ENDITEM, "Name=password", "Value=bean", ENDITEM, "Name=JSFormSubmit", "Value=on", ENDITEM, LAST);
再次运行,正常运行喽!