录制、回放乱码问题解决办法和快照问题解决办法.

2023-10-27

1、录制的脚本乱码
LR录制的脚本中可能会有乱码,主要是当URL中有中文时。
通过如下问题可以解决此问题:
a)  Go to Vugen ->Tools -> Recording Options ->Advanced
b)  Check the option that reads"Support Charset" and select "UTF-8"

2、回访乱码
还有一类乱码问题是:IE访问页面一切正常,但是LR回放时在runviewer中显示的页面为乱码。
这一问题一般是由于页面保存时的编码格式和页面中的charset格式不一致引起的(html头中通常会有<meta.http-equiv="Content-Type"c>)。遇到这类问题,只需要将页面做另存为,将保存的编码格式和页面中的charset格式统一起来就可以了。
引起问题的原因是:
IE浏览器解码时会优先考虑文件的保存编码格式,而后考虑页面中的charset格式,(正常情况下两者是一致的),而runviewer是直接使用页面中的charset格式打开的。
例如:charset=gb2312,但是文件的保存的编码格式是UTF-8,IE访问时会以UTF-8解码,而runviewer却是以GB2312格式解码,以GB2312解UTF-8自然是乱码。
出现乱码的原因和解决办法很可能不全面,请大家补充。
说到底,还是run viewer功能比较简单引起的。
run viewer中的乱码不影响测试结果。

3、没有快照
现在再来说一说LR的快照问题,LR脚本录制完成后回放,在回放概况中的快照都是红X,见附件。
这一问题应该是LR中文补丁引起的,要去比较高的朋友,请不要打中文补丁。
呵呵,LR对中文的支持还是不理想啊。

最后将有关字符集的资料帖上来,供大家参考。

字符集、字符编码
1.文件分为文本文件和二进制文件﹐不过本质都一样﹐都是些01。
2.计算机存储设备存储的0或1﹐称为计算机的一个二进制位(bit)。
3.二进制文件的0和1有专门的应用程序来读﹐所以它们没有什么乱不乱码的问题﹐只要该程序认得就行。(像doc,xls,exe,dll等)
4.文本文件就不一样了﹐notepad要认识它﹐vs.net要认识它,UE也要认识它…所以它们就要有一个标准。这个标准的原理其实很简单﹐就是把所有的字符都给它一个序号﹐然后根据这个序号来找字符就可以了。这个东东就是编码表,也叫字符集(charset)。
5.文本文件存的都是字符﹐如﹕A,?,@,x。很明显一个bit不能表示﹐刚好计算机的存储单位–字节(byte)就是多个字节(1个byte=8个bit),因此用byte来表示字符就理所当然了。
6.第一个编码表–ASCII码很快产生﹐很简单﹐就是用一个byte来表示一个字符(最高位置0),总共能存储128(2^8)个字符。如A用65表示﹐存在计算机中就是01000001(65)﹐为了书写方便﹐我们一般记作0×41(16进制),97则表示小写的a,存在计算机中就是01100001(97)﹐记作0×61。?用63表示,记作0×3F。
7.英语国家的大小写字母加起来才52个字符﹐再加上数字﹐符号和一些特殊字符﹐已经足够使用。所以ASCII刚开始非常流行(谁叫计算机不是咱中国发明的…)
8.随着计算机的普及﹐当非英语系的国家开始使用时﹐ASCII已经明显不能满足了(总不成天天使用xiaosheng来表示”小生”吧),所以这些国家(地区)就开始制订自己的标准。
9.中国大陆制订了简体汉字的字符集(GB2312)。和英语国家不同﹐我们的汉字远远不止128个﹐所以一个byte肯定不能表示完﹐那就多加个byte,16位(65536)总可以了吧。不过这样虽解决了位数不够的问题﹐但是原来的英文文件怎么办?总不成又全部拿出来改成双字节吧。幸好﹐居然发现原来的ASCII的第一位居然是0﹐那我们把第1位改成1不就OK了吗?以后凡看到0开头的就读1个字节﹐1开头的就读2个字节。(而且128*128表示所有的简体字也足够了)
10.因此在GB2312标准中,”小”的序号是0xD0A1,表示成1101000010100001,而A还是表示成01000001,这就是为什么简体操作系统读ASCII文件不会乱码﹐而反之则不然的原因。
11.目前来说﹐情况还比较好﹐中国大陆的计算机运行正常。
12.看到中国大陆制订了一个标准﹐其它国家和地区也不甘示弱﹐纷纷亮出自己的字符集,于是乎什么BIG5(中国台湾),shift_jis(日本),ks_c_5601-1987(韩国)都闪亮登场﹐一时间百鸟争鸣,百花齐放。
13.每个国家都想与ASCII保持兼容﹐理所当然﹐后面的字符就完全不一样了﹐因此﹐同样的0xD0A1,在GB2312中是”小”字﹐而在BIG5中却是”苤”字。你想想﹐这样不乱才怪。
14.到了这时候﹐总有人会想到﹐再这样继续下去是肯定不行的﹐于是它们就想到了﹐如果有一个标准﹐能包括所有字符那不就OK了吗?
15.于是”大哥大”标准就出来了﹐这就是unicode,为了能够足够表示世界上的所有字符这样光荣而又伟大的任务﹐这家伙用了四个字节来表示(2的32次方到底是多少﹐我也懒得算了),这下好了﹐天下太平了﹐再也不会有麻烦了﹐耳根清静了…(打住﹐你小子这么这么罗嗦呀)
15.不过unicode好是好﹐但是毕竟四个字节表示一个字符”浪费”太大了(我那破猫上网容易吗﹐电信黑呀﹐说好是2M﹐就给我200K…)﹐而且大家”惊奇”地发现﹐居然世界上一些”较强大”的国家的字符刚好集中在前65536位前﹐呵呵﹐结果unicode也分成了unicode-16和unicode-32了﹐自然﹐前者只用两个字节表示(所以只能表示前65536位喽,欧亚国家大部分字符都OK了﹐什么﹐你们那个@$Y$%字符没有﹐呵呵﹐不管我什么事,找标准协会﹐都是那帮家伙弄的…)
16.虽然标准出来了﹐可是好歹ASCII也用了这么久﹐那些英语国家也在那里嚷嚷﹐这倒好﹐搞个什么破标准﹐我们又没有得到什么好处﹐反而让我们原来的程序都运行不了了(为什么呀﹐你想想﹐原来我们的程序字符都是一个字节一个字节认﹐现在倒好﹐全改成2个一起认﹐这还怎么跑呀?)﹐况且我们凭白无故了用了这么多0﹐真别扭(unicode中的前128位还是ASCII标准﹐只不过在前面加了8个0)﹐由于那些国家”势力”比较大﹐所以这个问题不容忽视
17.这个世界上的牛人总是这么多﹐这个问题很容易就被小意思地解决了。
18.想想GB2312怎么解决与ASCII兼容的问题的(1开头的就读2个字节﹐0开头的就读1个字节)﹐同样﹐UTF也这样﹐0开头的读1个字节(ASCII码)﹐110开头的读2个字节﹐1110开头的读3个字节﹐这就是伟大的UTF-8(当然还有UTF-16,原理一样﹐xx开头的读4个字节﹐xx开头的读5个字节﹐xx开头的读6个字节)
19.当然UTF-8没GB2312这么简单﹐读完之后不能直接查编码表﹐多加一个步骤﹐按照模板提取一下字符再查就OK了
以下就是UTF-8的模板
0×0000 - 0×007F用一个字节表示 0xxxxxxx
0×0080 - 0×07FF用两个字节表示 110xxxxx 10xxxxxx
0×0800 - 0xFFFF用三个字节表示 1110xxxx 10xxxxxx 10xxxxxx
举个例子吧,
如 果你遇到了11100110 10110001 10001001 01000001这样的字节流﹐首先你看第一个字节以1110开头﹐即读3个字节并按模板提取得到 0110 110001001001(去除模板标志﹐再四字节四字节读即0×6c49),查unicode编码表就是”汉”字,而最后一个以0开头就一定是一个字节了﹐0×0041,也就是”A”。
20.好了﹐上面是原理﹐再来谈谈简繁体操作系统转换时的乱码问题吧
21.按照我的想法﹐windows操作系统应该有一个默认的系统字符集﹐如简体操作系统应该是GB码﹐繁体操作系统则是BIG5,英文操作系统是ASCII。系统内的软件(notepad)默认都是使用这个字符集。
22.所以我在繁体操作系统默认存储的文本文件就是BIG5了﹐当这个文件到了简体系统里﹐它的notepad程序则使用自己的默认编码(GB)来读取﹐这样就乱了。
23.因此如果在保存时就使用utf-8来保存﹐应该在两系统切换时就不会有问题了。
24.而要解决这个问题其实也很简单﹐只要知道这个文本文件原来的编码就可以了﹐使用它读出来﹐再转成unicode即可。
上述的资料载自网上,不知出处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

录制、回放乱码问题解决办法和快照问题解决办法. 的相关文章

  • 软件测试开发/全日制/测试管理丨Docker容器技术

    Docker 是一种轻量级的容器技术 通过将应用程序及其所有依赖项封装到一个可移植的容器中 实现了应用程序的便携性 可部署性和可伸缩性 下面是关于 Docker 容器技术的主要概念和优势 主要概念 容器 Container 容器是一个轻量级
  • 【性能测试入门】:压力测试概念!

    压力测试可以验证软件应用程序的稳定性和可靠性 压力测试的目标是评估软件在极端负载条件下的鲁棒性和错误处理能力 并确保软件在紧急情况下不会崩溃 它甚至可以进行超出软件正常工作条件的测试 并评估软件在极端条件下的工作方式 在软件工程中 压力测试
  • JMeter 批量接口测试

    一 背景 最近在进行某中台的接口测试准备 发现接口数量非常多 有6 70个 而且每个接口都有大量的参数并且需要进行各种参数验证来测试接口是否能够正确返回响应值 想了几种方案后 决定尝试使用JMeter的csv读取来实现批量的接口测试 二 脚
  • 外包干了2个月,技术退步明显...

    先说一下自己的情况 大专生 18年通过校招进入武汉某软件公司 干了接近4年的功能测试 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了2年的女朋友
  • Locust负载测试工具实操

    本中介绍如何使用Locust为开发的服务 网站执行负载测试 Locust 是一个开源负载测试工具 可以通过 Python 代码构造来定义用户行为 避免混乱的 UI 和臃肿的 XML 配置 步骤 设置Locust 在简单的 HTTP 服务上模
  • RF自动化环境安装+自动化实例解析

    RF定义 通用型的 自动测试框架 绝大部分的软件的的自动化系统都可以采用它 特点 测试数据文件 Test Data 对应一个个的测试用例 测试数据文件里面使用的功能小模块叫关键字 由测试库 Test Library Robot Framew
  • Python自动化操作:简单、有趣、高效!解放你的工作流程!

    今天跟大家分享一套自动化操作流程解决方案 基于 Python语言 涉及 pyautogui pyperclip pythoncom win32com 依赖包 安装命令为 pip install pyautogui pip install p
  • 外包干了3个月,技术退步明显。。。。。

    先说一下自己的情况 本科生 19年通过校招进入广州某软件公司 干了接近4年的功能测试 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了四年的功能测试 已经让我变得不思进取 谈了2年的女朋友
  • 软件测试|使用Python轻松裁剪视频

    简介 裁剪视频是在视频编辑和处理中常见的任务之一 Python提供了多种库和工具 可以用来裁剪视频 在本文中 我们将详细讨论如何使用Python来裁剪视频 并提供示例代码 步骤1 环境准备 首先 我们要安装必要的Python库 我们将使用
  • 软件测试|sqlalchemy relationship

    简介 SQLAlchemy是一个流行的Python ORM 对象关系映射 库 它允许我们以面向对象的方式管理数据库 在SQLAlchemy中 relationship 是一个重要的功能 用于建立表之间的关系 在本文中 我们将详细探讨 rel
  • 软件测试|Pydantic处理时间类型数据

    简介 我们之前介绍过使用 pydantic 验证数据 比如校验数据的格式等 但是在我们的日常工作中 还有一种数据是需要我们验证的 比如时间数据 时间数据不同于字符串 列表等数据 与他们的验证不一样 本文就来为大家介绍一下 pydantic
  • Python自动化测试 | 如何使用Robot Framework进行自动化测试?

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 如何写好一个错误报告

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • Jmeter 性能-阶梯式性能指标监听

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 开眼了,自动化测试还能这样用?

    2024软件测试面试刷题 这个小程序 永久刷题 靠它快速找到工作了 刷题APP的天花板 CSDN博客 文章浏览阅读2 3k次 点赞85次 收藏11次 你知不知道有这么一个软件测试面试的刷题小程序 里面包含了面试常问的软件测试基础题 web自
  • 甜蜜而简洁 —— 深入了解Pytest插件pytest-sugar

    在日常的软件开发中 测试是确保代码质量的关键步骤之一 然而 对于测试报告的生成和测试结果的可读性 一直以来都是开发者关注的焦点 Pytest插件 pytest sugar 以其清晰而美观的输出 为我们提供了一种愉悦的测试体验 本文将深入介绍
  • 月薪2W的软件测试工程师,到底是做什么的?

    在生活中 我们常常会遇到以下几种窘迫时刻 准备骑共享单车出行 却发现扫码开锁半天 车子都没有反应 手机导航打车 却发现地图定位偏差很大 司机总是跑错地方 买个水 却遭遇自动售货机吐币 或者不找零钱 好不容易休息打个游戏 却一直出现卡顿 闪退
  • 一文让你了解UI自动化测试

    测试都起什么作用 是项目的保险 但不是项目的救命草 测试无实际产出 但作用远大于实际产出 测试是从项目维度保证质量 而不是测试阶段 UI自动化 下面简称自动化 基于UI进行自动功能测试 以Web端作为例子 一般的UI功能自动化都是基于HTM
  • 15:00面试,15:06就出来了,问的问题有点变态。。。

    从小厂出来 没想到在另一家公司又寄了 到这家公司开始上班 加班是每天必不可少的 看在钱给的比较多的份上 就不太计较了 没想到9月一纸通知 所有人不准加班 加班费不仅没有了 薪资还要降40 这下搞的饭都吃不起了 还在有个朋友内推我去了一家互联
  • UI自动化测试之Jenkins配置

    背景 团队下半年的目标之一是实现自动化测试 这里要吐槽一下 之前开发的测试平台了 最初的目的是用来做接口自动化测试和性能测试 但由于各种原因 接口自动化测试那部分功能整个废弃掉了 其中和易用性有很大关系 另外 也和我们公司的接口业务也有关

随机推荐

  • android安卓开发调试经验

    android安卓开发调试经验 在哪查看错误信息 Run Console LogCat 常见错误 网络问题 检查权限
  • 【千律】C++基础:通过函数实现数据交换--指针方案

    include
  • 链表求和

    I 问题描述 你有两个用链表代表的整数 其中每个节点包含一个数字 数字存储按照在原来整数中相反的顺序 使得第一个数字位于链表的开头 写出一个函数将两个整数相加 用链表形式返回和 给出两个链表 3 gt 1 gt 5 gt null
  • RTT-移植Nano

    RTT 移植Nano 一 准备工作 STM32F103模板工程 RTT nano源码 https www rt thread org document site rt thread version rt thread nano an0038
  • Spring源码深度解析:九、bean的获取③ - createBeanInstance

    一 前言 文章目录 Spring源码深度解析 文章目录 createBeanInstance 的流程图如下 让我们根据流程图一步一步的学习一下spring是如何创建bean的吧 这篇文章是接着 Spring源码深度解析 八 bean的获取
  • 基于TensorFlow的CNN卷积网络模型花卉分类(1)

    一 项目描述 使用TensorFlow进行卷积神经网络实现花卉分类的项目 加载十种花分类 建立模型后进行预测分类图片 环境 win10 TensorFlow gpu 1 12 0 pycharm 训练集 训练数据存放路径为 D LearnM
  • 用bat批量重命名不同文件夹下的同名文件

    起因 手机B站离线的视频目录是这个样子的 视频的每一个分P都会生成一个文件夹 包含视频基本资料和一个名为80的文件夹 这个文件夹里放着后缀名为m4s的音频和视频文件 现需要使用电脑播放下载的视频 那么第一步就是更改视频和音频文件的后缀名 百
  • 防火墙总结

    一 什么是防火墙 防火墙分为软件防火墙和硬件防火墙 他们的优缺点 硬件防火墙 拥有经过特别设计的硬件及芯片 性能高 成本高 当然硬件防火墙也是有软件的 只不过有部分功能由硬件实现 所以硬件防火墙其实是硬件 软件的方式 软件防火墙 应用软件处
  • Failed to load module “canberra-gtk-module“ 或 Using GTK+ 2.x and GTK+ 3 in the same process is not

    项目场景 ubuntu安装matlab之后 运行时报错Failed to load module canberra gtk module 如下 原因分析 未安装Matlab运行所需要的依赖 执行如下命令 sudo apt get insta
  • 深入浅出UML类图(二)

    类与类之间的关系 1 在软件系统中 类并不是孤立存在的 类与类之间存在各种关系 对于不同类型的关系 UML提供了不同的表示方式 1 关联关系 关联 Association 关系是类与类之间最常用的一种关系 它是一种结构化关系 用于表示一类对
  • 树的四种遍历C/C++实现

    树的四种遍历C C 实现 树的四种遍历C C 实现 结构定义 先序创建树 先序遍历 中序遍历 后序遍历 层次遍历 总代码 给懒人下载运行用 运行示例 树的四种遍历C C 实现 备考期末 懂得都懂 手敲遍代码 比较懒 都是递归形式 结构定义
  • error LNK2019: 无法解析的外部符号 WSAStartup,该符号在函数 “public:

    error LNK2019 无法解析的外部符号 gethostname 该符号在函数 public static bool cdecl gdcm System GetHostName char const GetHostName Syste
  • Fragment 实现简易新闻界面(适配手机与Pad)

    一 前言 Android 在 Android 3 0 API 级别 11 中引入了 Fragment 主要目的是为大屏幕 如平板电脑 上更加动态和灵活的界面设计提供支持 由于平板电脑的屏幕尺寸远胜于手机屏幕尺寸 因而有更多空间可供组合和交换
  • 前端白屏检测方案

    早期因为浏览器 技术 兼容性等诸多问题 导致网页的显示效果非常的单一 基本都是静态页 后续随着Angular React Vue等前端框架的出现 采用SPA单页面应用的方案越来越多 用户和企业对于页面的稳定性 性能有了更高的诉求 根据Abe
  • 为什么我们的自动化测试“要”这么难

    为什么我们的自动化测试 要 这么难 笔者在别的贴子里面曾提过 自己所在部门的 自动化测试经历了几次步进式的建设 都具有阶段性的成果 但是总的看来却不是一个成功的案例 因为赶进度 仓促的投入让一大堆的脚本质量比较低下 有几个测试组由于没有人力
  • Selenium

    Selenium 参考崔庆才爬虫 安装 pip install selenium 注意 需要下载Chrome的 webdriverwebdriver 下载完成后解压到与python exe可执行文件同一目录下 基本使用 from selen
  • this.getClass().getClassLoader().getResourceAsStream找不到文件

    this getClass getClassLoader getResourceAsStream 路径正确 但是找不到文件时 要检查对应xml文件是否放到了这个地方 只有放到了才能找到
  • 安卓手机GPU OpenCL总结

    前段时间 把市面上手机GPU OpenCL支持情况做了一个总结 总结如下 目前 手机 GPU 市面有四个公司产品 Qualcomm Imagination Technologies ARM Vivante 分别对应的产品如下 所有表格均是按
  • Springboot课程试题库管理系统毕业设计源码271129

    Springboot 计算机网络原理 课程试题库管理系统 摘 要 信息化社会内需要与之针对性的信息获取途径 但是途径的扩展基本上为人们所努力的方向 由于站在的角度存在偏差 人们经常能够获得不同类型信息 这也是技术最为难以攻克的课题 针对 计
  • 录制、回放乱码问题解决办法和快照问题解决办法.

    1 录制的脚本乱码 LR录制的脚本中可能会有乱码 主要是当URL中有中文时 通过如下问题可以解决此问题 a Go to Vugen gt Tools gt Recording Options gt Advanced b Check the