本地化测试错误特征分析与测试方法

简介:
软件本地化测试是项系统性任务,讲究团队协作精神。软件测试工程师负责测试、发现、报告软件错误。软件错误修复工程师的工作是及时正确修复处理这些软件错误。为了便于软件错误修复工程师能够迅速重现报告的错误,寻找错误产生的原因,然后及时修复错误,需要测试工程师正确完整地报告发现的错误。另外,不同类型的软件错误,又分别由来自不同公司的软件错误修复工程师进行修复。例如,软件功能错误和软件国际化错误只能由源语言软件供应商的软件错误修复工程师进行修复,而本地化错误由本地化服务商的软件错误修复工程师进行修复。 
  下面对本地化软件的错误的三种典型类型进行分类讨论,探讨错误的表现特征,产生的原因,测试要求,发现错误的方法。 
  1 、功能错误 
  表现特征 
  · 不能实现设计要求的功能。 
  · 产生与设计要求不符合的结果。 
  · 绝大多数存在于源语言软件和本地化软件,也有仅出现在本地化软件中。 
  · 经常出现在软件的菜单项、工具栏按钮和对话框的功能按钮中。 
  产生原因 
  · 源语言软件编码错误。 
  · 错误本地化,如将程序中的变量字串名进行了翻译等。 
  测试要求 
  · 保证输入数据正确,或者打开了正确的测试用例。 
  · 明确正确的输出结果和中间数据数值及格式。 
  测试方法 
  · 对于菜单项或工具栏按钮,通过全面测试各个选项,认真观察每一步是否正确执行,输出结果(包括格式和数值)是否正确。 
  · 对于对话框,可以逐个执行各按钮,各个列表选项等观察执行结果。 
  · 对于命令行形式的多个并列选项,采用路径跟踪法,按分支顺序测试嵌套的全部子项。 
  说明 
  · 特别注意不同选项、不同按钮相互操作的影响。 
  · 注意检查快捷键是否遗漏,是否多余,是否不同,是否起作用。 
  2 、国际化错误 
  表现特征 
  · 控件或对话框中显示不可辩识或无意义的明显错误的字符。 
  · 不支持双字节字符的输入和输出,包括双字节的文件名和路径名。 
  · 与当地不符合的默认打印纸张大小。 
  · 与当地不符合的日期和时间格式。 
  · 本地化软件的列表项排序错误。 
  · 某些没有本地化的字符串。 
  · 仅出现在本地化后的版本中。 
  产生原因 
  · 源程序在设计时没有正确进行国际化设计,例如,没有提供双字节字符集的支持。 
  · 源程序在设计时没有将可以本地化的字符串与软件代码进行彻底分离。 
  · 软件本地化后,单字节字符向双字节字符转化过程中,由于单字节和双字节之间的差别,可能使得某些本地化后的双字节字符的显示乱码。 
  测试要求 
  · 本地化后的软件字符显示正确完整,无乱码或明显错别字。 
  · 与本地区域有关的数据类型(日期 / 时间,货币符号,纸张大小,字体,度量单位等)的显示符合本地的格式要求。 
  测试方法 
  · 执行菜单或按钮,检查对话框中的字符。 
  · 打开帮助文档,检查所有需要翻译的字符。 
  说明 
  · 注意检查对话框下拉列表中需要拖动滚动条才能显示的内容。 
  · 需要确认源语言软件对应项正确,仅本地化软件存在错误。 
  3 、本地化错误 
  包括翻译错误和控件大小和位置引起的布局错误。 
  表现特征 
  · 应该翻译而没有翻译的英文字符。 
  · 不应该翻译而翻译的中文字词。 
  · 错误翻译的字词。 
  · 较多隐含在对话框各控件以及帮助文档中。 
  · 只在本地化版本中存在该类型错误。 
  · 控件相互重叠或排列不均匀。 
  · 控件中字符显示不完整。 
  · 主要出现在本地化版本的对话框中。 
  产生原因 
  · 翻译人员不熟悉翻译要求。 
  · 翻译人员工作疏漏。 
  · 用户界面的翻译与标准术语表不一致。 
  · 软件本地化后,由于源语言和本地化语言的表达方式不同,本地化后的字符数与源语言不同,每个字符所占空间尺寸不同,使得在英文版本正确显示的控件字符,可能在本地化版本显示不正确。 
  · 在编译本地化软件之前,没有对资源文件对话框及其控件调整大小。 
  · 本地化人员调整软件资源文件不当引起。例如,对话框及其控件高度或宽度的不正确调整。 
  测试要求 
  · 明确需要翻译和不需要翻译的内容。 
  · 明确正确的翻译方式。 
  · 根据术语表,确认术语翻译的正确性与一致性。 
  · 对话框中控件布局均匀,字符显示完整正确。 
  · 对话框中控件数量相等,没有多余或丢失的控件 
  测试方法 
  · 主要同时打开中英文版本,执行相同的操作。 
  · 结合标准界面翻译术语表,参照对比。 
  · 执行将要打开对话框的菜单或工具栏按钮,观察打开对话框中的控件布局。 
  · 对比检查源语言软件和本地化软件对应的对话框中控件的数量 
  说明 
  · 对于对话框,如果含有下拉列表框,要打开列表框查看全部项。 
  · 特别要注意选项中开关类翻译错误。 
  · 可能在执行不同的操作后,如选择了不同单选或复选按钮后,编辑框显示重叠等。 
  · 执行后带省略号的菜单或命令按钮,将会显示对话框。 
  · 一些对话框控件的布局错误如果也存在于源语言软件中,则属于软件设计错误,应该分配给软件供应商处理。 
  以上对本地化软件测试经常遇到的三种错误类型进行了分析,实际测试是一个动态的过程,不能孤立静态地对待发现的错误,错误的类型并不是绝对的,需要具体问题。例如,本地化软件中如果发现应该翻译而没有翻译的错误,既可能是由于本地化翻译过程中忘记翻译引起的本地化错误,也可能是源语言软件设计编程中的硬编码引起的国际化错误。再者,某些软件功能错误既可能是由于本地化翻译过程中采用了错误的翻译格式 ( 例如,某些不应该翻译的程序变量字符被翻译了 ) 引起的错误,也可能是源语言软件编程错误。最后,一个错误可能包含着其他的不同类型的错误。比如在对话框中,选择某个按钮,产生一个错误提示对话框,这可能是一个按钮功能错误,如果对话框中存在需要翻译而没有翻译的英文,则又是一个本地化翻译错误,如果对话框中存在无法辨识的字符,则又是一个国际化错误,如果对话框中按钮排列重叠,则还是一个本地化布局错误。 
  总之,本地化软件的错误的产生是多方面的,不能仅仅归结为软件本地化过程带来的错误。实际上,良好的国际化设计的源程序是减少软件本地化错误的根本保证。当然,提高软件本地化过程能力,提高翻译和检查,优化本地化软件编译流程,能够减少很多因本地化产生的错误。软件测试工程师需要认真思考软件错误表现的实质,深入分析错误来源,将其划分为正确的错误类型,分配给适当的修复工程师(源语言软件供应商或本地化服务商)处理。





本文转自 xkdcc 51CTO博客,原文链接:http://blog.51cto.com/brantc/116447,如需转载请自行联系原作者
目录
相关文章
|
2月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
266 1
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
514 8
|
5月前
|
测试技术
软考软件评测师——可靠性测试测试方法
软件可靠性是指软件在规定条件和时间内完成预定功能的能力,受运行环境、软件规模、内部结构、开发方法及可靠性投入等因素影响。失效概率指软件运行中出现失效的可能性,可靠度为不发生失效的概率,平均无失效时间(MTTF)体现软件可靠程度。案例分析显示,嵌入式软件需满足高可靠性要求,如机载软件的可靠度需达99.99%以上,通过定量指标评估其是否达标。
|
5月前
|
消息中间件 缓存 监控
性能测试怎么做?方法、流程与核心要点解析
本文系统阐述了性能测试的核心方法论、实施流程、问题定位优化及报告编写规范。涵盖五大测试类型(负载验证、极限压力、基准比对、持续稳定性、弹性扩展)与七项关键指标,详解各阶段任务如需求分析、场景设计和环境搭建,并提供常见瓶颈识别与优化实战案例。最后规范测试报告内容框架与数据可视化建议,为企业级实践提出建立基线库、自动化回归和全链路压测体系等建议,助力高效开展性能测试工作。
|
9月前
|
编解码 缓存 Prometheus
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
本期内容为「ximagine」频道《显示器测试流程》的规范及标准,我们主要使用Calman、DisplayCAL、i1Profiler等软件及CA410、Spyder X、i1Pro 2等设备,是我们目前制作内容数据的重要来源,我们深知所做的仍是比较表面的活儿,和工程师、科研人员相比有着不小的差距,测试并不复杂,但是相当繁琐,收集整理测试无不花费大量时间精力,内容不完善或者有错误的地方,希望大佬指出我们好改进!
583 16
「ximagine」业余爱好者的非专业显示器测试流程规范,同时也是本账号输出内容的数据来源!如何测试显示器?荒岛整理总结出多种测试方法和注意事项,以及粗浅的原理解析!
|
9月前
|
人工智能 自然语言处理 测试技术
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
AxBench 是由斯坦福大学推出,用于评估语言模型可解释性方法的基准测试框架,支持概念检测和模型转向任务,帮助研究者系统地比较不同控制技术的有效性。
222 5
AxBench:斯坦福大学推出评估语言模型控制方法的基准测试框架
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
MarS 是微软亚洲研究院推出的金融市场模拟预测引擎,基于生成型基础模型 LMM,支持无风险环境下的交易策略测试、风险管理和市场分析。
368 8
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
|
11月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
145 11
|
11月前
|
开发框架 .NET Java
C#集合数据去重的5种方式及其性能对比测试分析
C#集合数据去重的5种方式及其性能对比测试分析
171 10