51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2590|回复: 2
打印 上一主题 下一主题

[讨论] LR 参数化的值是中文时在测试传值乱码的中文后面会多出来字符导致失败

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2015-10-28 21:52:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,我在脚本里面加了将中文转成utf-8格式的编码,但是还是会报错,脚本回放的时候,已经显示a的值后面没有乱码字符了,但是100个name值中还是有30多个在测试时候失败 显示restr的值后面有乱码字符。
这个是什么原因呢   是开头的代码错误吗?


char *a;
    lr_convert_string_encoding(lr_eval_string("{name}"),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"UnicodeString");  //此时skey是一个汉字列表的参数,把它转换为utf-8,存入UnicodeString参数中
    a=lr_eval_string("{name}");
    lr_save_string(a,"restr");
        web_url("login",
                "URL=http://192.168.68.21:56000/login",
                "Resource=0",
                "RecContentType=text/html",
                "Referer=",
                "Snapshot=t1.inf",
                "Mode=HTML",
                EXTRARES,
                "Url=/css/login.css", ENDITEM,
                "Url=/css/images/log-bg.jpg", ENDITEM,
                "Url=/css/images/login.png", ENDITEM,
                "Url=/css/themes/default/images/loading.gif", ENDITEM,
                "Url=/favicon.ico", "Referer=", ENDITEM,
                "Url=http://s.pc.qq.com/pcmgr/zonedword/gjzonedword20150522.js", ENDITEM,
                LAST);

        web_submit_form("login_2",
                "Snapshot=t2.inf",
                ITEMDATA,
                "Name=username", "Value=TEST001", ENDITEM,
                "Name=password", "Value=123456", ENDITEM,
                "Name=verifyCode", "Value=", ENDITEM,
                EXTRARES,
                "Url=/css/images/index-head-bg.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/js/My97DatePicker/skin/WdatePicker.css", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/combo_arrow.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/tabs_icons.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/blank.gif", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/panel_tools.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/searchbox_button.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=http://s.pc.qq.com/pcmgr/zonedword/gjzonedword20150522.js", "Referer=http://192.168.68.21:56000/checklist", ENDITEM,
                "Url=/css/themes/default/images/accordion_arrows.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/js/My97DatePicker/skin/datePicker.gif", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/pagination_icons.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/images/check-working.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/themes/default/images/messager_icons.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                "Url=/css/images/check-finish.png", "Referer=http://192.168.68.21:56000/", ENDITEM,
                LAST);

       
        lr_rendezvous("拣货");


        web_custom_request("pick.json",
                "URL=http://192.168.68.21:56000/order/pick.json",
                "Method=POST",
                "Resource=0",
                "RecContentType=application/json",
                "Referer=http://192.168.68.21:56000/",
                "Snapshot=t12.inf",
                "Mode=HTML",
                "EncType=application/json; charset=utf-8",
                "Body=[{\"assignId\":\"{jfd}\",\"color\":\"{yx}\",\"fwd\":\"\",\"size\":\"{dx}\",\"barcode\":\"{txm}\",\"seqno\":\"00000\",\"cancelQty\":\"0\",\"serialNum\":\"{hh}\",\"serialName\":\"{restr}\",\"num\":\"1\",\"quoPrice\":\"680\",\"endPrice\":\"680\",\"allPrice\":\"680\",\"checkNum\":\"1\"}]",
                LAST);

        web_submit_data("findAssignmentList.json_3",
                "Action=http://192.168.68.21:56000/order/findAssignmentList.json",
                "Method=POST",
                "RecContentType=application/json",
                "Referer=http://192.168.68.21:56000/",
                "Snapshot=t13.inf",
                "Mode=HTML",
                ITEMDATA,
                "Name=page", "Value=1", ENDITEM,
                "Name=rows", "Value=20", ENDITEM,
                "Name=orderStatus", "Value=0,", ENDITEM,
                "Name=payId", "Value=", ENDITEM,
                "Name=orderId", "Value=", ENDITEM,
                "Name=platformId", "Value=", ENDITEM,
                "Name=payShopIds", "Value=", ENDITEM,
                "Name=sellerIds", "Value=", ENDITEM,
                "Name=fromDate", "Value=20151013", ENDITEM,
                "Name=toDate", "Value=20151028", ENDITEM,
                "Name=sessionId", "Value=", ENDITEM,
                "Name=checkStatus", "Value=0,", ENDITEM,
                LAST);


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

使用道具 举报

  • TA的每日心情
    奋斗
    2 小时前
  • 签到天数: 2821 天

    连续签到: 3 天

    [LV.Master]测试大本营

    2#
    发表于 2015-10-29 15:00:16 | 只看该作者
    你每次使用restr打印出来看看,和报错比较一下

    评分

    参与人数 1测试积点 +10 收起 理由
    lsekfe + 10 恭喜你获得测试积点10

    查看全部评分

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-8 21:53
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    3#
    发表于 2015-11-4 18:17:16 | 只看该作者
    转码后,参数名不在是"name"了,而是"UnicodeString";


    lr_convert_string_encoding(lr_eval_string("{name}"),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"tname");
    lr_save_string(lr_eval_string("{tname}"),"tname");
    web_convert_param("tname","SourceString={tname}","SourceEncoding=PLAIN","TargetEncoding=URL",LAST);
    比如上面这样,转码后,调用转码后的变量应该是"tname"
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-27 11:18 , Processed in 0.068350 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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