LoadRunner中文乱码

来源:互联网 发布:什么手机壳防摔 知乎 编辑:程序博客网 时间:2024/05/22 13:26

1. 在loadrunner里设置了UTF-8之后,还要在run-time setting中做如下设置,设置Vuser—Run-time Settings-Browser-Browser Emulation-Change。如图:(以IE6为例)。然后,设置IE,查看-编码-钩上“自动选择”和Unicode(UTF-8)。

需要注意的是:在IE设置时,当选择Unicode(UTF-8)时,需要打开一个网页,设置才会生效,如果是空网页,则不生效。


2. LoadRunner在录制Web协议脚本时出现中文乱码,在回放脚本时会使回放停止在乱码位置,脚本无法运行。错误现象:某个链接或者图片名称为中文乱码,脚本运行无法通过。错误分析:脚本录制可能采用的是URL-based
script方式,如果程序定义的字符集合采用的是国际标准,脚本就会出现乱码现象。解决办法:重新录制脚本,在录制脚本前,打开录制选项配置对话框进行设置,在“Recording Options”的“Advanced”选项里先将“Surport
Charset”选中,然后选中支持“UTF-8”的选项。


3.

解决这个问题必须认识到一个事实就是,loadrunner测试服务器交换数据使用的是utf8格式,但是展现在replaylog中是使用gb2312格式,而且在脚本中如何使用web_reg_find的时候也是使用的是gb2312格式,所以知道这个原理后,事情就好办多了。

1).获取测试服务器提供的utf8格式的文字并且转换成gb2312格式展现出来
        web_reg_save_param_ex(
          "ParamName=aa",
          "LB=ProductName",
          "RB=ProductBriefName",
          "NotFound=warning",
          SEARCH_FILTERS,
          LAST)     ;    


     web_url("web_url",
          "URL=http://124.238.214.65:70/Scripts/Home/HomeHotProduct.js",
          "TargetFrame=",
          "Resource=0",
          "Referer=",
          LAST);
    lr_convert_string_encoding(lr_eval_string("{aa}"),"utf-8","gb2312","str");
lr_output_message(lr_eval_string("{str}"));



2).本地的gb2312的中文经过转换成utf8发给测试服务器

       lr_convert_string_encoding(lr_eval_string("智能手机"),"gb2312","utf-8","a1");
          web_reg_save_param_ex(
          "ParamName=aa",
          "LB={a1}",
          "RB=",
          "NotFound=error",
          SEARCH_FILTERS,
          LAST);

          web_url("IndexCategoryProductJson.js",
          "URL=http://124.238.214.65:70/Scripts/Home/IndexCategoryProductJson.js",
          "Resource=1",
          "RecContentType=application/x-javascript",
          "Referer=http://124.238.214.65:8081/",
          "Snapshot=t24.inf",
          LAST);

4.
lr_convert_string_encoding("要检查的中文",LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"str");
值已存参数str 
检查str即可
另运行前设置: 运行时设置>preferences>options>Convert from/to UTF-8 选择0(好像是) 可以尝试下如不成功可尝试选1 忘记了
原创粉丝点击