录制 Web 脚本时,生成的脚本中存在乱码该如何解决?

2020-05-13 09:03发布

3条回答
小雨点儿
1楼 · 2020-05-13 20:17.采纳回答

1、录制脚本前,打开录制选项配置对话框Record-Options

2、进入到Advanced标签,先勾选“Support charset”,

3、然后选择中支持UTF-8。

4、再次录制,就不会出现中文乱码问题了。

测试之光
2楼 · 2020-05-13 09:39

这需要在脚本中使用encode编码转化代码,一般转化为utf-8就可以。

乔治与佩奇
3楼 · 2021-12-10 17:02

一、录制回放中文乱码

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

5

图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:转换后的目标字符串。

实践一:

1

2

3

4

5

6

7

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的存在导致了脚本回放失败。

实践二:

1

2

3

4

5

6

7

8

9

10

11

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的影响,测试结果正常

相关问题推荐

  • 回答 157

    虽然从事开发行业的女生越来越多,但女生的比例还是远比不上男生。软件测试的男女生比例则基本相当,软件测试要求细心、耐心,大部分女生也是比较适合学的。而且软件测试课程分为手工测试和自动化测试,手工测试分为功能测试、性能测试、接口测试。自动化测试...

  • 回答 121

    需要。很多人当初抱着测试不需要懂代码,才选择了这个行业,这个就要看对自己的职业定位了,是止步于月薪过万就可以了,还是往20k、30k去突破,如果这样的话,是肯定要会接口、会自动化,就必然要涉及到代码。如果真的看不懂代码,实际的测试后期的工作会出现...

  • 回答 91

    在我看来游戏开发挺难的,尤其像手游一类的还有网游,里面有很多的程序代码而且伤神又费力,不过也有女生在这方面做的很好的,如果你感兴趣,非常想学,可以试试

  • 回答 80

    软件测试专业现在很火热,很缺少人才,25岁学软件测试能学会,就业薪资也高,工作也相对轻松

  • 回答 11
    已采纳

    测试类型有:功能测试,性能测试,界面测试。功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用...

  • 回答 15
    已采纳

    这个其实和接口测试的场景密不可分的,比如说:外部接口测试:    必须先接口测试通过了,才能执行功能测试子系统或者各个模块之间的联调测试:    必须各子系统后台代码完成,并提供接口才可以完成测试,一般来说都要求各子系统功能测试通过后再进行...

  • 回答 6
    已采纳

    这个是会因为公司的架构不同而不同的,并不是固定的,但是一般是会有专门的测试部门,或者叫质量保证部,也有可能是叫别的名字。

  • 回答 43
    已采纳

    移动端测试,包括App兼容性测dao试,7*24小时稳定性测试,功耗性能测试,UI测试,交互测试等,课程主要学习的内容有:1、功能测试主要包括计算机基础、软件测试核心理论、Linux、数据库,学习目标是掌握软件测试核心理论,结合Linux、数据库等可实现移动端、w...

  • 回答 1

    标题  1. 首先要做一个标题党(此标题党非彼标题党)。标题一定要清晰简洁易理解,不应该臃长  2. 尽量前缀要规范,例如模板: [Product][Version]_[Feature]_[Title],这样描述会很清晰,也方便查找  3. 缺陷的标题一定要描述在什么情况下发生了什么问...

  • 回答 1

    1、 缺陷报告可以记录缺陷2、可以对缺陷进行跟踪管理3、可以对缺陷报告进行分类 总结 统计

  • 回答 1

    1、缺陷编号(Defect ID),提交BUG的顺序。2、缺陷标题(summary),简明扼要的说明一下这个BUG。3、缺陷的发现者(DetectedBy) ,一般是自己。4、发现缺陷的日期(Detected on date),一般是当天。5、缺陷所属的模块(subject), 在测试哪个模块的时候发现的BUG...

  • 回答 1

    缺陷标题好的缺陷标题需要让相关人员一目了然,一般建议的格式是条件+失败。缺陷类型缺陷类型也是根据具体的项目而定的。但一般情况下分为功能、界面、建议。重现步骤重现步骤的编写规则可以参考测试用例中的操作步骤 ,一定要足够详细、说明清楚问题的操作顺...

  • 回答 1

    工具:NoSQLUnitJsTestDriverQTRunnerVenusFluintBuster.JSSQLUnitECUTQTestlibUnitilsgreatestDbUnitAbbotGoogleTest框架:JUnitMoqJSCaptureMockCUnitPyUnitCppUTestCppUnitzCUTcipra

  • 回答 1

    JunitTestNGGoogleTestpytestunittestJmockitJaCoCogcov、lcov、gcovrCoverage.pyEvoSuiteDiffblue Cover

  • 回答 1

      React Hooks测试库( Testing Library)是一个简单而完整的React Hooks测试工具。  React Hooks测试库让用户可以为React钩子创建简单的测试工具,自定义钩子的输入和检索输出,以处理在功能组件体内运行的情况。  使用React Hooks,用户不必为了测试而去担...

  • 回答 1

    1、单元测试注重代码逻辑,接口测试注重业务逻辑;2、单元测试的粒度最小,是测试最小独立的单元模块(不依赖其他模块);接口测试不是,会覆盖很多;3、单元测试是白盒测试,接口测试是黑盒测试;4、单元测试关注的是代码的实现和逻辑,测试范围较小,保证实...

没有解决我的问题,去提问