目 录
1.课题来源及类型. 2
2.课题的意义及国内外现状分析. 2
2.1国际化软件测试概述. 2
2.2软件本地化测试概述. 3
2.3软件本地化测试面临的问题. 4
2.4软件本地化测试研究意义. 5
3. 课题的研究目标、研究内容和拟解决的关键问题. 5
3.1 课题研究目标. 5
3.2课题研究内容. 5
3.3 拟解决的关键问题. 6
4. 课题的研究方法、设计及试验方案,可行性分析. 6
4.1课题的研究方法. 6
4.1.1理论研究法. 6
4.1.2比较研究法. 7
4.1.3行动研究法. 7
4.2课题设计方案. 7
4.3课题可行性分析. 8
5.课题计划进度和预期成果. 9
5.1计划进度. 9
5.2预期成果. 9
5.2.1本地化测试模型. 9
5.2.2金融系统用户界面测试方案. 10
5.2.3金融系统语言质量测试规范. 10
经济的全球化促进了软件产业的国际化,软件国际化生产和全球服务成为更多国际软件公司的发展策略。软件产品要获得更多的国际市场份额,必须进行软件国际化设计、开发、测试和服务。
一个英文版的软件不可能被非英语国家的用户很好地使用,因此,需要针对目标市场,将软件产品按特定国家或语言市场的需要进行全面定制。
本文主要结合金融系统F的Unicode测试项目,分析本地化测试的特性和存在的问题,研究适合金融系统的本地化测试方法,以提高项目质量。
随着全球软件产业在生产要素和市场资源的整合和迁移,软件生产的国际化成为新的软件设计模式和技术。国际化软件也称为全球化软件,它是为全球用户设计,面向全球市场发布的具有一致的界面、风格和功能的软件。
国际化软件需要复杂的软件开发技术和管理方法,需要满足全球用户的不同需求,这就对国际化软件的功能、性能等质量指标提出了更高的要求。提高软件测试在软件生命周期中的地位是保证软件质量的关键,做好软件测试工作是解决软件质量问题的根本,为了保证国际化软件的产品质量,进行有效的国际化测试成为必不可少的生产过程。
国际化软件测试是保证软件具有良好的国际化数据支持并且具有良好本地化能力的质量活动。国际化软件测试具有测试多方参与、跨国家、地区广、测试内容广泛、测试周期时效性强等特点。明确国际化软件测试的测试目标,熟悉国际化软件测试的特征,制定有效的软件测试计划,选择合适的测试合作伙伴,跟踪和控制软件测试过程,是顺利实施国际化软件测试的基础。
国际化软件测试要求发现软件设计中不满足国际化和本地化要求的潜在问题,确保软件代码不破坏软件功能的情况下,能够支持和处理国际化数据,保证软件全球可用。国际化软件测试检查在任意语言文化、区域设置以及可能的国际输入方式环境下,软件具有正确的功能,软件的组件和模块符合软件设计规格说明,正确地表示和处理数据的输入、显示和输出而与软件国际化运行环境设置或者文化、区域无关。
国际化软件测试的老方法是粗放型的方法,如果想要支持两种国家语言或区域,可能需要使用双倍的开发和测试资源。因为即使两个区域的设置是相似的,也不能因为程序对于一个区域有效就假定它对另一个区域也同样有效。但通过国际化工程后的软件可以使得软件测试更容易而且更有效。一旦你知道程序已经全球化了,就能够知道它支持任何区域和任何语言。因此,就不需要分别测试应用程序的每个本地化版本的功能。
国际化软件测试还可用以验证产品发布之后扩展目标市场的能力。虽然在开发应用程序的时候,并没有打算支持某些特殊的区域和语言,但是如果软件通过了国际化软件测试,就可以在以后进行重新评估,并不用修改源代码就转入到新的市场。国际化测试保证了这种转移不会有任何问题。
软件本地化是将一个软件产品按特定国家或语言市场的需要进行全面定制的过程,它包括翻译、重新设计、功能调整以及功能测试、是否符合当地的习俗、文化背景、语言和方言的验证等。
软件本地化测试是软件本地化项目的重要组成部分之一,是控制和提高软件本地化质量的重要手段和关键措施。这一过程的目的是找出本地化软件中的错误和缺陷,对其进行修正,从而提高软件本地化质量。全面的软件本地化测试解决方案,可以保证软件发布进度、降低支持和维护成本,并确保上乘的产品质量。
软件本地化测试是一套工程系统,其中包含多个紧密联系的环节。随着软件国际市场的激烈竞争和软件用户对质量要求的不断提高,软件本地化测试作为保证软件本地化质量和可靠性的技术手段,在软件本地化项目中的重要性日益凸显。软件本地化测试的关键在于软件供应商(Software Provider)和本地化服务商(Localization Vendor)对测试工作的高度重视,包括在测试资源、测试文档、测试流程、测试方法和测试管理等各个方面的有效准备和正确实施。本地化测试是通过运行本地化软件来寻找和发现错误的质量控制过程,是对本地化软件进行质量控制的重要手段。本地化测试一个更详细的定义,则可以描述为,这项工作是根据软件本地化各阶段的测试计划和规范说明,精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行本地化软件,以发现程序错误和缺陷的过程。
本地化测试应该注意几个方面,第一个方面是在本地化时经常改变的东西,比如用户界面的内容文件。第二个方面是文化特定、语言特定和国家特定的方面。例如,区域默认设置和默认的语言,默认的拼写检查器等等。还应该注意基本的功能测试,比如设置、更新并卸载在本地化的环境中执行的测试。
纵观国内外软件本地化测试的实施现状,发现本地化测试在翻译和技术这两个方面还存在着很多不足和问题。
首先,当一个软件产品需要在全球范围应用时,就得考虑在不同的地域和语言环境下的使用情况,最简单的要求就是用户界面上的内容能用本地化语言来显示,因此软件本地化测试第一项要考虑的就是翻译问题。本地化不仅仅是翻译不同的文化使用不同的语法和句子结构,直接词对词的翻译是远远不够的。相反,在保持原有意思和风格的基础上,还必须把源语言格式替换为目标语言的格式。但目前许多的翻译公司工作人员都是语言专业背景,缺乏对所需翻译软件的专业知识的了解,所以,很多情况下都是直接词对词的翻译,感觉非常生硬,而且常常会词不达意。
其次,完成了语言的转换,对于整个本地化过程来说,才只是完成了第一阶段。要使该软件真正投入使用,还有很多技术方面的问题有待解决,主要有以下几个方面:
第一,字符集问题。西方语言,如英语、法语和德语,使用了不到256个字符,所以它们可以用单字节编码表示。可是亚洲语言,比如中文和日文,却有几万个字符,所以需要双字节编码。因此在做本地化测试时,应该检查开发人员是否使用了正确的字符编码,而如何判断源代码是否在所需测试的系统中正确的使用了字符编码,各种不同的系统仍是需要结合实际情况研究不同的测试方法。
第二,数据格式问题。数字、货币和日期的表达方法在不同的国家格式也不尽相同,所以在把软件本地化时,也应该特别注意这些方面的问题,考虑到本地化格式的要求。如何对这些非常细节的地方进行充分、全面的测试,仍是需要考虑的问题。
第三,页面显示和布局问题。由于源代码没有充分考虑到国际化版本的要求,很多软件本地化之后在页面的外观上会出现一些不尽如人意的地方。例如:没有翻译的字段、对齐问题、大小写问题、文字遮挡图像问题、乱码显示问题等。这些问题涉及到所测系统的各个方面,所以,如果可以有效的进行测试以便尽早的、充分的发现这些缺陷,尚需进一步研究。
第四,配置和兼容性的问题。测试本地化软件时,其配置和兼容性也是必须考虑的问题。软件可能会用到的任何外设都要在平台配置和兼容性测试的等价区间中考虑。兼容性包括与硬件的兼容性、与上一版本的数据兼容及与其他本地化软件的兼容性等。
软件本地化测试能够解决、发现和报告本地化软件的错误和缺陷,通过对这些错误和缺陷的处理,确保本地化软件的语言质量、功能、互操作性等符合软件本地化的要求,满足当地语言市场用户的使用要求。软件本地化测试的目标是以最少的时间、人力和软硬件资源,找出本地化软件中的各种类型的错误和缺陷。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助设计出有针对性地检测方法,改善测试的有效性。
软件的特点、测试方法和测试时间等因素,决定了软件本地化测试,不可能进行完全测试。经过软件本地化测试,无法表明软件中不存在潜在的错误。因此,研究和探索出具体的软件本地化测试方案和规范,以此来优化软件本地化测试、缩短测试时间、提高测试效率、扩大测试覆盖面。
传统的软件本地化测试模型有集成测试模型、分布测试模型和‘一加一’测试模型,而这些模型都是粗放型的,在具体实施时感觉实际指导性不强。所以,有必要结合实际测试工作对这些模型进行进一步改进和优化,使其能够更好的结合我国的实际,对本地化测试工作能起到更好的指导作用。
本文以金融系统F的Unicode测试项目为例,对国际化软件测试和软件本地化测试技术进行了阐述,对软件本地化测试中遇到的问题进行了探讨,结合金融系统测试的特点对软件本地化测试进行研究。
研究目标是:结合金融系统本地化测试过程,探讨软件本地化测试的模型的规范,对用户界面测试、语言质量测试、本地化功能测试和本地化测试模型进行详细阐述,并提出适合于金融系统的用户界面测试方案、语言质量测试规范和本地化测试模型,以提高项目质量。
本文以国际化软件测试技术为话题引入,研究软件本地化测试的模型和本地化测试的三个主要方面,结合本人正在从事的金融系统F的Unicode测试项目,提出适合金融系统的软件本地化测试方案。
本文主要研究内容包括:
首先,通过对本课题的研究,对国际化软件测试和软件本地化测试技术进行理论的梳理,进一步明确软件本地化测试的基本属性、执行策略、执行流程和面临的问题,为后续的研究奠定理论基础。
其次,结合本人正在从事的金融软件的本地化测试项目,深入的分析了软件本地化测试的三个主要方面,即用户界面测试、语言质量测试和本地化功能测试,有效判断需要改进的地方,并探索适合于金融系统的本地化测试方案。
最后,通过分析当前软件本地化测试模型,并结合本人的项目实践,分析当前本地化测试模型存在的缺陷,研究并提出更合理的软件本地化测试模型,使资源得到更合理的配置,时间合理安排,使这个测试模型能更好的适应实际的测试过程。
针对国际化软件测试和软件本地化测试的最新研究理论,结合本地化测试的实际实施,着重研究和解决三方面的问题:一、软件本地化测试的模型改进;二、适合金融系统的用户界面本地化测试方案;三、适合金融系统的语言质量本地化测试规范。
软件测试是一门综合性的涉及知识面很广的学科,其领域涵盖了计算机软硬件、操作系统、网络、软件测试专业知识、信息技术等多方面知识。
而软件本地化测试与一般的测试在内容和重点上具有很大的不同。 二者不仅测试顺序不同而且测试内容、重点、方法也不完全相同。软件本地化测试除了要涉及到以上所提及的各方面的知识外,还要结合国际化软件测试、语言翻译技巧、各国文化习俗等方面知识来展开测试。
此外,软件本地化测试引入我国才只有很短的一段时间,国内对它的研究还不够成熟,所以,需要加强对国外的一些相对前沿的文献和理论的学习,进行借鉴吸收,结合我国实际情况收集整理相关的文献资料,并适当加以深化,以便能研究出一些适合我国实际的有关本地化测试的具体方案和规范。
理论研究作为实践的前提,这是本课题研究所遵循的首要。
软件本地化测试虽然和一般的测试有很大的区别,但它作为软件测试的一个分支与其他测试还是存在很多共通性和结合点,通过对其他测试理论、技术和方法的对照、比较,从而分析本地化测试与其的异同,深化对本地化测试的研究。
软件测试技术包括很多个方面,有黑盒测试技术、白盒测试技术、面向对象的软件测试技术、Web应用测试、应用负载压力测试、网络测试、兼容性测试等,这其中有很多方面都与本地化测试有着紧密的联系,在进行本地化测试研究时,可以将本地化测试与以上测试进行定性和定量的比较分析,一方面探索其共性方面,另一方面发现其量上的区别,以便于借鉴其他测试中一些好的方法和技术。
本课题是基于本人现在从事的金融系统F的本地化测试项目展开的,通过对本地化测试的实际实施,将本地化测试的理论知识与具体项目实践结合起来,力争在实践中不断探索和完善,使理论与实际相结合,以便于创造性地运用理论解决实际问题。
实践是检验真理的唯一标准, 通过实践将自己对本地化测试某些方面改进的研究,于实际工作中进行检验,以解决项目中实际遇到的问题为研究目的,最终落实到对实际问题的解决。在实践中也便于很好的进行研究个案的选择,以使研究更有针对性和实用性。
在项目初期,结合工程实践,深入学习、研究软件本地化测试的目的、原则、内容、策略和流程,分析测试过程中遇到的各种问题产生的原因以及实际测试中发现的缺陷情况。然后,参考本地化集成测试模型、本地化 ‘一加一’测试模型和本地化分布测试模型,提出符合现代软件产业实际情况的本地化测试模型,使各种资源得到更合理的配置,以便在最短的时间内以最高效率完成测试工作。最后,针对本地化测试中的用户界面测试和语言质量测试以及金融系统特性分别进行分析、研究,在结合各种优秀测试理论的基础上,提出适合金融系统本地化测试的用户界面测试方案和语言质量测试规范。
图4.1 本地化集成测试模型
|
|
图4.2 本地化分步测试模型
基于以上分析结果,我们认为本文的研究方法和设计方案切实可行,可操作性高,研究结果也具有相当的实用性,课题具有一定的研究价值。
①总结当前几种经典的本地化测试模型——集成测试模型、本地化 ‘一加一’测试模型和本地化分布测试模型,指出其各自的优点、侧重面和欠缺的地方;
②通过对实际项目本地化测试过程的分析、总结,提出符合现代软件产业实际情况的本地化测试模型,使各种资源得到更合理的配置,以便在最短的时间内最高效的完成测试工作。
根据用户界面测试和本地化测试的特性,并结合金融系统测试的特点,提出适合金融系统本地化测试的用户界面测试方案。
结合我国语言质量测试规范和对实际金融系统本地化测试过程中遇到的关于语言翻译的问题,提出适合金融系统本地化测试的语言质量测试规范。