LoadRunner中文乱码问题解决方法

LoadRunner中文乱码问题解决方法

  前段时间在录制,增强,整合LoadRunner脚本,期间两次遇到了中文乱码问题。在此记录一下中文乱码问题的解决办法。

  一、录制回放中文乱码

  我录制登陆的脚本,用户名中出现中文,回放的时候总是提示登陆失败。如下图:

  

图1 LR回放中文乱码

  解决中文乱码可以在录制的时候在Virtual User Gen的 Tools->Recoding Options -> Advanced -> Support charset -> UTF-8。重新录制后中文乱码问题得到解决。

  二、整合脚本中文乱码

  录制增强(参数化,关联,检查点,事务)脚本后决定将几个脚本整合在一起。于是新建了一个空的脚本,将登陆退出公用操作分别放在vuser_init和vuser_end中,其他操作放在各自的Action中。整理完成回放后又出现中文乱码。为解决这个问题,最关键的是要把本地GBK编码的汉字转换成UTF-8编码格式的信息,为此我们引进loadrunner自带的编码函数lr_convert_string_encoding。

  int lr_convert_string_encoding ( const char *sourceString, const char *fromEncoding, const char *toEncoding, const char *paramName);

  该函数有4个参数,含义如下:

  sourceString:被转换的源字符串。

  fromEncoding:转换前的字符编码。

  toEncoding:要转换成为的字符编码。

  paramName:转换后的目标字符串。

  实践一

  lr_convert_string_encoding("登陆账号",LR_ENC_SYSTEM_LOCALE, LR_ENC_UTF8, "Account");

  web_submit_data("login.quick",

  ……

  "Name=account", "Value={Account}", ENDITEM,

  ……

  LAST);

  回放脚本的时候依然报错。查看lr_convert_string_encoding的解释,它会在其转换的字符串末尾加上\x00。在C语言中\X00是一个字符串的结束,而正是这个\x00的存在导致了脚本回放失败。

  实践二


char tmp[100];

lr_convert_string_encoding("登陆账号",LR_ENC_SYSTEM_LOCALE, LR_ENC_UTF8, "Account");

strcpy(tmp,lr_eval_string("{Account}"));

lr_save_string(tmp,"Account");

web_submit_data("login.quick",

……

"Name=account", "Value={Account}", ENDITEM,

……

LAST);

  通过strcpy和lr_save_string的处理屏蔽\x00的影响,测试结果正常

时间: 2024-10-20 07:43:29

LoadRunner中文乱码问题解决方法的相关文章

zabbix中文乱码问题解决方法(Zabbix 2.2.3)

我把zabbix安装完成后,调整为中文界面,出现乱码. 原因:因为没有中文字体,没有设置显示字体为中文. 解决方法(网络整理收集): 1.获取一个字体文件,上传至zabbixServer的web目录fonts文件夹(/data/www/zabbix/fonts), Windows → 控制面板 → 字体 命名为小写字母 2.修改配置文件,/www/zabbix/include/defines.inc.php //define('ZBX_FONT_NAME', 'DejaVuSans'); def

soapUI参数中文乱码问题解决方法&soap UI工具进行web接口测试

soapUI参数中文乱码问题解决方法 可能方案1: 字体不支持中文,将字体修改即可: file-preferences-editor settings-select font 修改字体,改成能显示中文的,如FangSong 可能方案2: 如果响应报文有乱码,可尝试: file-preferences-http settings,不勾选response compression 注意:前两种修改都要将乱码窗口重新打开才生效. 可能方案3: 编辑soapui.bat文件,在 set JAVA_OPTS

Zip文件中文乱码问题解决方法(MAC->Windows)

前言: 最近收到的ZIP交互原型,打开查看中文一堆乱码.主要是产品都是高大上啊,用的都是MAC,咱酷毙用的Windows,话说安卓APP,你用MAC搞啥啊.可恨的压缩用的是zip,不是rar之类的.为了咱用Windows开发及测试的屌丝,分享下解决方法.如你高在上,用的MAC,请跳过本文. 目录: 1.问题 2.解决方法 1.问题 现象: a.ZIP文件,360压缩3.1正式版查看.解压中文为乱码. b.ZIP文件,Winrar 3.7压缩查看.解压中文为乱码. 2.解决方法 方法一:安装新版本

【转】asp.net Cookie值中文乱码问题解决方法

来源:脚本之家.百度空间.网易博客 http://www.jb51.net/article/34055.htm http://hi.baidu.com/honfei http://tianminqiang.blog.163.com/blog/#m=0 ============================================================================== cookie中怎么保存中文 在用cookie保存用户名的时候,发现cookie值不能存中文

WingIDE中文乱码问题解决方法

WingIDE中文乱码问题解决方法 安装完WingIDE后,首次运行python脚本时,若脚本中含有UTF-8中文,在Debug I/O输出框中,全部变成了乱码. 这时其实我们设置下WingIDE的编码方式为UTF-8即可. 具体的方法如下: 依次选择Edit->Preferences ->Debugger ->I/O,将其中的Encoding相关编码都改为UTF-8即可. 具体见下图: 来自为知笔记(Wiz)

struts2中注解redirect时传递参数中文乱码问题解决方法

试过了很多方法  tomcat 编码  .字符串转换编码 .URLEncoder  .. 但是都没解决,后来仔细看了   struts2 的redirect ,redirectAction , 加上 params={"encode","true"} 就不会有乱码了 @Action(value = "/backend/deleteApplyInfoOfAuditById", results = { @Result(name = "succ

msysgit 中文乱码问题解决方法

msysgit安装好后处理中文是有问题的:ls中文目录/文件名乱码:提交中文的log,push到服务器上会乱码:git log查看服务器pull过来的log乱码. 1.ls命令列出的中文目录/文件名正确显示解决方法: 以下配置文件的起始目录都为你安装msysgit所在的目录. 在Git\etc\git-completion.bash,加入: alias ls='ls --show-control-chars --color=auto' 2. git log中的less乱码问题,需要添加支持utf

j2ee、mvn、eclipse、Tomcat等中文乱码问题解决方法

一.更改jdk默认编码为UTF-8,保证启动的JVM不会出现中文乱码问题 1.在编译的时候,如果我们没有用 -encoding 参数指定我们的JAVA源程序的编码格式,则javac.exe首先获得我们操作系统默认采用的编码格式. JDK首先获得操作系统的file.encoding参数(它保存的就是操作系统默认的编码格式,如WIN7,它的值为GBK),当我们不加设置就编译时,相当于 使用了参数:javac -encoding gbk XX.java,当然就会出现不兼容的情况. 2.下面看一幅图:

Sublime汉化破解中文乱码问题解决方法

0.工具 http://pan.baidu.com/s/1bnr3ciN 1.Sublime汉化 将Default.sublime-package 文件放在 C:\Program Files\Sublime Text 3\Packages 路径下 自动变中文 2控制台 package_control-3.1.2.zip解压后重命名 Package Control 名字之间有个空格一定要这样写 放在 C:\Users\ArgaliSheep\AppData\Roaming\SublimeText