技术开发 频道

在LoadRunner 脚本中使用关联

4) 将脚本中所有出现的动态值都替换为参数
    将脚本中所有出现的动态值都替换为参数。 打开“Search and Replace”对话框(“Edit/Replace...”),并逐个将硬编码替换为参数。 其重要性何在?

    试想,您有以下源码:
    web_submit_data("somepage", ...
    "Name=OrderNumber", "Value=125", ENDITEM,
    "Name=UserID", "Value=125",

     如果您为 UserID 创建参数,并替换其所有的值(“125”),那么其就会生成代码:
    web_submit_data("somepage", ...
    "Name=OrderNumber", "Value={WCSParam_Text1}", ENDITEM,
    "Name=UserID", "Value={WCSParam_Text1}",

    就会产生这样的错误:当 UserID 变化,OrderNumber 可能就会变为固定值 125。 现在我能确保您已经成功替换所有需要替换的硬编码。让我们开始执行最后一步:

    5) 检查变化
    经过以上操作,我们的代码将变为:  

web_submit_data("rms.jsp", "Action=http://eprumossd0010:8400/RMS/jsp/rms.jsp", "Method=POST", "RecContentType=text/html", "Referer=http://eprumossd0010:8400/RMS/html/testFramework.html", "Snapshot=t4.inf", "Mode=HTML", ITEMDATA, "Name=TIMESTAMP", "Value={WCSParam_Text2}", ENDITEM, "Name=CHECKSUM", "Value={WCSParam_Text1}", ENDITEM, // others parameters ... LAST);

“{WCSParam_Text1}”表示“获取 WCSParam_Text1 参数的值”。
 

web_submit_data("rms.jsp", "Action=http://eprumossd0010:8400/RMS/jsp/rms.jsp", "Method=POST", "RecContentType=text/html", "Referer=http://eprumossd0010:8400/RMS/html/testFramework.html", "Snapshot=t4.inf", "Mode=HTML", ITEMDATA, "Name=TIMESTAMP", "Value={WCSParam_Text2}", ENDITEM, "Name=CHECKSUM", "Value={WCSParam_Text1}", ENDITEM, // others parameters ... LAST);
web_submit_data(
"somepage", ... "Name=OrderNumber", "Value=125", ENDITEM, "Name=UserID", "Value=125",
web_submit_data(
"somepage", ... "Name=OrderNumber", "Value={WCSParam_Text1}", ENDITEM, "Name=UserID", "Value={WCSParam_Text1}",

    所以,现在的规则是:
? 当服务器返回不同的检验和、时标值时
? web_submit_data 会捕获并将其置于变量 WCSParam_Text1 和 WCSParam_Text2 中
? 然后,我们使用 {WCSParam_Text1} 和 {WCSParam_Text2} 获得变量的当前值,并将其用到脚本中去。
运行修改后的脚本,并观察捕获的服务器响应的结果:
   图10
您可以看到动态值被保存至变量。很好!我们刚完成了脚本关联!

提示:使用以下语句获得并调试变量捕获的值:
  lr_output_message("Value of WCSParam_Text1:%s", lr_eval_string("{WCSParam_Text1}"));
   lr_output_message("Value of WCSParam_Text2:%s", lr_eval_string("{WCSParam_Text2}"));
再次执行,结果是:


    结束语: 我以尽可能简单易懂的语言解释了 LoadRunner 中的关联功能。亲爱的读者,非常欢迎您也能分享自己的意见和想法。 参考文献:
• Using parameters in Loadrunner VuGen script
• LoadRunner Correlation - How to capture an array of dynamic data with web_reg_save_param function
• What are LoadRunner parameter and parameterization?
• Boundaries for web_reg_save_param LoadRunner function
• How to perform basic operations on LoadRunner parameters?

0
相关文章