51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4815|回复: 11
打印 上一主题 下一主题

[求助] LoadRunner录制的脚本,有一处不管是关联还是不关联,回放均失败,求高手解答

[复制链接]
  • TA的每日心情
    开心
    2018-4-23 08:52
  • 签到天数: 306 天

    连续签到: 1 天

    [LV.8]测试军长

    跳转到指定楼层
    1#
    发表于 2013-5-8 18:06:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本次遇到的问题是:在测试自有产品项目管理系统(B/S架构,JAVA开发)的并发用户数的瓶颈(验证本系统最多支持多少用户并发操作),录制脚本使用Web协议。
    以下是我用LR8.1录制的脚本:
    /* Registering parameter(s) from source task id 81

    // {WCSParam3} = "57332B5914AD9733B6AAC14BAE8DBF664D9A7FC64B58FA2512F789137377C5D2449515B69B0D8B8E"

    // */


    web_reg_save_param("WCSParam3",

    "LB/IC=.do?sid=",

    "RB/IC=;",

    "Ord=ALL",

    "Search=headers",

    "RelFrameId=1",

    "SaveLen=80",

    LAST);


    web_url("main.do",

    "URL=http://116.204.99.242:8888/JH_SMS/main.do?sid=57332B5914AD9733B6AAC14BAE8DBF664D9A7FC64B58FA2512F789137377C5D2449515B69B0D8B8E ",  注:应该是这里出了问题,为什么我用关联参数{WCSParam3}代替后,回放找不到{WCSParam3},见如后面的报错。如不替换的话,此时页面是过期的(最新的已变成2A515179A0B211BC8EAB16D33D6B440E8E1A19B9E347FDE59BDCFAA0F5129BA58DC1AF2410A98472 ),将无法打开而失败。请高手帮助解答,如何解决,谢谢!

    "Resource=0",

    "RecContentType=text/html",

    "Referer=",

    "Snapshot=t4.inf",

    "Mode=HTML",

    EXTRARES,

    "Url=js/dojo/_firebug/firebug.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/parser.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/date/stamp.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/Button.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/_FormWidget.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/window.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_Widget.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_WidgetBase.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/manager.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/Stateful.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/focus.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/place.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/AdapterRegistry.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/popup.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/window.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/scroll.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/sniff.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/uacss.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/typematic.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_base/wai.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_Templated.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/string.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/cache.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_CssStateMixin.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_Container.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_HasDropDown.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/Dialog.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/dnd/move.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/dnd/Mover.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/dnd/common.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/dnd/autoscroll.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/dnd/Moveable.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/dnd/TimedMoveable.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/fx.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/fx/Toggler.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/_FormMixin.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_DialogMixin.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/DialogUnderlay.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/layout/ContentPane.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/layout/_ContentPaneResizeMixin.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/_Contained.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/layout/_LayoutWidget.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/html.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dojo/i18n.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/nls/zh/loading.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/nls/zh/common.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/TooltipDialog.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/ValidationTextBox.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/TextBox.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/Tooltip.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/nls/zh/validate.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=js/dijit/form/Form.js", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=images/main_bg.jpg", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    "Url=images/main_bgline.jpg", "Referer=http://116.204.99.242:8888/JH_SMS/main.do?sid={WCSParam3}", ENDITEM,

    LAST);
    录制完后,回放失败,信息如下:
    Action.c(125): Error -26366: "Text=欢迎使用项目管理系统" not found for web_reg_find  
    [MsgId: MERR-26366]

    Action.c(125): Error -26377: No match found for the requested parameter "WCSParam3". Check whether the requested boundaries exist in the response data. Also, if the data you want to save exceeds 1024 bytes, use web_set_max_html_param_len to increase the parameter size  
    [MsgId: MERR-26377]

    Action.c(125): Notify: Saving Parameter "WCSParam3_count = 0"
    Action.c(125): web_url("main.do") highest severity level was "ERROR", 197662 body bytes, 4087 header bytes, 11 chunking overhead bytes  
    [MsgId: MMSG-26387]



    关联函数的位置应该不是问题,但又不知道为什么关联后,又不能将最新的动态数据代替。
    本人用lr_output_message("%s",lr_eval_string("{WCSParam3}"));打印显示是空的。请问如何打印WCSParam3的变量信息?

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2013-5-9 09:30:33 | 只看该作者
    回复 1# sirme


        发错位置了吧,我帮你吧帖子转移了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2013-5-9 10:17:54 | 只看该作者
    dojo框架么。。。把录制选项改一下别用web_link很容易有问题,关联估计是需要的,你要自己做手工关联试试。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-4-23 08:52
  • 签到天数: 306 天

    连续签到: 1 天

    [LV.8]测试军长

    4#
     楼主| 发表于 2013-5-9 16:36:17 | 只看该作者
    回复 3# 云层
    一开始录制是不能自动关联的,是我手动添加关联规约才能录制时自动关联,也做了手动关联,结果都一样
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-4-2 12:39
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    5#
    发表于 2013-5-9 20:42:03 | 只看该作者
    打印变量的值,还可以更简单点lr_output_message(lr_eval_string("{WCSParam3}"));

    在这里替换之前,获取到关联之后,输出这个变量看看。
    web_url("main.do",

    "URL=http://116.204.99.242:8888/JH_SMS/main.do?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-4-23 08:52
  • 签到天数: 306 天

    连续签到: 1 天

    [LV.8]测试军长

    6#
     楼主| 发表于 2013-5-10 09:04:05 | 只看该作者
    回复 5# omg
    使用你所说的函数,执行后运行日志内容如下:
    Action.c(124): Warning: The string 'WCSParam3' with parameter delimiters is not a parameter.Action.c(124): {WCSParam3}

    还是不能根本性解决问题,关联的函数应该没问题,但不知道为什么就是获取不到值?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-4-2 12:39
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    7#
    发表于 2013-5-10 20:46:51 | 只看该作者
    个人理解这个警告,就是说打印的时候,这个WCSParam3还没有执行到关联地方。

    我始终怀疑你的获取这个值的地方不对,如果你的实际代码顺序真是这样的:

    web_reg_save_param("WCSParam3",

    "LB/IC=.do?sid=",

    "RB/IC=;",

    "Ord=ALL",

    "Search=headers",

    "RelFrameId=1",

    "SaveLen=80",

    LAST);


    web_url("main.do",

    "URL=http://116.204.99.242:8888/JH_SMS/main.do?sid=57332B5914AD9733B6AAC14BAE8DBF664D9A7FC64B58FA2512F789137377C5D2449515B69B0D8B8E "

    因为第一句是注册关联函数,第二句是打开这个页面,同时让关联函数去取值,然后赋值给WCSParam3。

    所以第二句sid=这里已经替换为{WCSParam3},那就算你的关联有效果,那WCSParam3只会等于{WCSParam3}这个本身。不知道看你懂没有。

    感觉,你应该在其他页面,第一次生成或者能拿到这个sid的地方,做关联,然后,到你这里的第二句,才能用。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2013-5-13 19:45:36 | 只看该作者
    额,楼主你关联的请求不对,web_url("main.do")这个请求之前至少还有一个请求吧,web_reg_save_param("WCSParam3")这个函数你要放在第一次服务器返回sid的前面
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2013-5-14 10:06:27 | 只看该作者
    心情好。。。帮你解答下吧。。。
    1. EXTRARES以下是废代码,都是一些网页内容的链接信息,所以这些基本都可以删掉
    2. 基于你报错的MSG和关联函数,估计你是用自动关联的
    WCSParam3的唯一性是否确认过,还有就是你关联内容的字节数超过了1024,你必须在代码开头加一段关联内容长度的控制函数,设置此脚本中关联的长度为多少上限。
    自己再试试吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2013-5-14 10:11:13 | 只看该作者
    本帖最后由 tachibana814 于 2013-5-14 10:16 编辑

    补充下,还有你关联函数的位置。。。一般都是先注册创建关联函数,然后再之后的页面替换,可能是第二个页面,也可能是第三第四个页面,关键看你的业务流程。建议以后不要用自动关联,手动关联可以让你更好掌握网页的数据传递以及业务流程
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2013-5-14 15:30:50 | 只看该作者
    心情好。。。帮你解答下吧。。。
    1. EXTRARES以下是废代码,都是一些网页内容的链接信息,所以这些基本都可 ...
    tachibana814 发表于 2013-5-14 10:06


    “EXTRARES以下是废代码,都是一些网页内容的链接信息”对于ls这点还是有点不同的看法哈,虽然说这部分请求删了对主请求也没有什么影响,但对于服务器来说,这部分的EXTRARES所造成的性能影响有可能比主请求的还大,对于真实场景运行时,这些请求如果又是必须产生的话,去掉反而会“失真”,那么你测出来的结果参考意义自然也大为降低,所以我个人觉得,如果录制脚本的时候这些附加请求都是确确实实存在的话,那么还是不要去掉为好
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-4-23 08:52
  • 签到天数: 306 天

    连续签到: 1 天

    [LV.8]测试军长

    12#
     楼主| 发表于 2013-5-16 16:10:59 | 只看该作者
    谢谢各位的支持,问题已解决。
    通过查找Generation Log,发现是自动关联时,web_reg_save_param函数位置顺序存放出差错了。还真想不到LoadRunner有这个BUG。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-5-5 08:37 , Processed in 0.083217 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表