ITPub博客

首页 > 应用开发 > IT综合 > 【性能测试】LoadRunner 手工关联方法

【性能测试】LoadRunner 手工关联方法

原创 IT综合 作者:berlits 时间:2015-08-31 00:15:45 0 删除 编辑

这里小结下手工关联的主要方法。这个不难,会了就觉得很容易。关联的思想,以后再讲。

手工关联主要包括如下几步(以webTours登陆为例)

1、 录制两遍脚本,执行完全一样的步骤,输入完全一样的参数,保存。分别为001002

2、 Tools--〉【Compare with script,选择001002,对比。

通过如下的对比可以看出,主要的差异在于如下两处。

lr_think_time(13);

"Name=userSession","Value=116695.15544755zAAcfAHpAfiDDDDDDzAVfpAtcDf", ENDITEM,

lr_think_time 是思考时间,此处可以忽略。



1、 找到关联字符串。
1)复制windiff里找到的差异:
userSession里的字符串“116695.15544755zAAcfAHpAfiDDDDDDzAVfpAtcDf”。注意这里有两个脚本,这里复制的字符串跟脚本是一个。别混淆了。

2)打开日志vuser—Run-time settings,打开Log选项下打开extened log选项。如下图示。


3)回放一遍脚本,在Recording Log下搜索116695.15544755zAAcfAHpAfiDDDDDDzAVfpAtcDf。如果RecordingLog下没有,就去GenerationLog下搜索。搜索出第一个结果即可。

搜索结果为: <input type=hidden name=userSession value=116695.15544755zAAcfAHpAfiDDDDDDzAVfpAtcDf>

这个字段就是我们要关联的信息了。下面就是确定左右边界。

2、 确定左右边界

1) 左边界:input type=hidden name=userSession value=

2) 有边界:>

3、 编写函数web_reg_save_param

这个函数是个注册函数,应该放在执行函数前面。


  1. web_reg_save_param(
  2. "SessionID",
  3. "LB=input type=hidden name=userSession value=",
  4. "RB=>",
  5. LAST);


这里的关联关键字名叫SessionID,可以自己取。

4、 确定函数位置

使用关键字符串input type=hidden name=userSession value=116695.285054678zAAcfVDpHcfDzAVfpAicDf,在Reply Log里搜索出第一行。

Action.c(5): <input type=hidden name=userSession value=116695.285054678zAAcfVDpHcfDzAVfpAicDf>\n

这里的Action.c(5),表示该函数应该放在18行。双击Action.c(5): 可以看出,该日志指向了如下的函数。在这里插入一行,写上注册函数即可。



  1. web_submit_data("login.pl",
  2. "Action=http://127.0.0.1:1080/WebTours/login.pl",
  3. "Method=POST",
  4. "TargetFrame=",
  5. "RecContentType=text/html",
  6. "Referer=http://127.0.0.1:1080/WebTours/nav.pl?in=home",
  7. "Snapshot=t8.inf",
  8. "Mode=HTML",
  9. ITEMDATA,
  10. "Name=userSession", "Value={SessionID}", ENDITEM,
  11. "Name=username", "Value=test01", ENDITEM,
  12. "Name=password", "Value=123456", ENDITEM,
  13. "Name=JSFormSubmit", "Value=on", ENDITEM,
  14. "Name=login.x", "Value=81", ENDITEM,
  15. "Name=login.y", "Value=12", ENDITEM,
  16. LAST);


7、将 "Name=userSession", "Value=116695.15544755zAAcfAHpAfiDDDDDDzAVfpAtcDf", ENDITEM,

替换为 "Name=userSession", "Value={SessionID}", ENDITEM,


完整的脚本如下,回放OK

  1. Action()
  2. {

  3. web_reg_save_param(
  4. "SessionID",
  5. "LB=input type=hidden name=userSession value=",
  6. "RB=>",
  7. LAST);

  8. web_url("WebTours",
  9. "URL=http://127.0.0.1:1080/WebTours/",
  10. "TargetFrame=",
  11. "Resource=0",
  12. "RecContentType=text/html",
  13. "Referer=",
  14. "Snapshot=t7.inf",
  15. "Mode=HTML",
  16. LAST);

  17. lr_start_transaction("登陆");

  18. lr_think_time(13);


  19. web_submit_data("login.pl",
  20. "Action=http://127.0.0.1:1080/WebTours/login.pl",
  21. "Method=POST",
  22. "TargetFrame=",
  23. "RecContentType=text/html",
  24. "Referer=http://127.0.0.1:1080/WebTours/nav.pl?in=home",
  25. "Snapshot=t8.inf",
  26. "Mode=HTML",
  27. ITEMDATA,
  28. "Name=userSession", "Value={SessionID}", ENDITEM,
  29. "Name=username", "Value=test01", ENDITEM,
  30. "Name=password", "Value=123456", ENDITEM,
  31. "Name=JSFormSubmit", "Value=on", ENDITEM,
  32. "Name=login.x", "Value=81", ENDITEM,
  33. "Name=login.y", "Value=12", ENDITEM,
  34. LAST);

  35. web_url("SignOff Button",
  36. "URL=http://127.0.0.1:1080/WebTours/welcome.pl?signOff=1",
  37. "TargetFrame=body",
  38. "Resource=0",
  39. "RecContentType=text/html",
  40. "Referer=http://127.0.0.1:1080/WebTours/nav.pl?page=menu&in=home",
  41. "Snapshot=t9.inf",
  42. "Mode=HTML",
  43. LAST);

  44. lr_end_transaction("登陆",LR_AUTO);

  45. return 0;
  46. }


完成





来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21112063/viewspace-1786964/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-01-20

  • 博文量
    3
  • 访问量
    60842