国际化软件测试是近年来逐渐发展的新兴测试领域,与传统的面向单一区域和语言的常规软件测试相比,具有很多不同的特征,表现在跨区域的全球测试、测试内容广泛、测试周期时效性强等多个方面。
 
1. 跨国家/地区的全球测试
 
国际化测试的各方分布在不同的国家和地区,是典型的全球分布测试,离岸外包测试的兴起使得全球测试的特征愈加明显。由于测试各方相隔遥远,因地区时差、文化观念和办公时间等的差异增加了国际化软件测试管理的复杂程度,要求测试管理人员具有较强的区域协调能力、交流沟通能力、远程项目跟踪和控制能力。
国际化软件测试的参与各方包括软件开发商的质量保证人员、技术支持人员和软件开发人员以及测试管理人员;软件测试服务商的软件测试人员、质量保证人员和测试管理人员;软件开发商在各个国家/地区的分支机构或其邀请委托的行业领域专家(技术和语言方面);软件外包测试服务商邀请委托的行业领域专家(技术和语言方面)。
 
2. 核心功能测试为基础,软件国际化和本地化测试为重点
 
国际化测试的测试内容广泛,包括核心功能/性能测试、国际化特征测试和本地化测试。
核心功能测试以测试软件的功能和性能为主。从测试阶段可以细分为单元测试、集成测试、系统测试和验收测试;从测试实现方式上可以分为手工测试和自动测试。
国际化特征测试包括国际化支持能力测试和本地化能力测试。国际化支持能力测试在于发现软件支持不同区域数据的能力,例如日期、时间、数字、货币和不同语言字符集;本地化能力测试在于检测软件是否考虑了本地化的方便性,是否容易实现本地化而不需要修改软件源代码。
本地化测试包括本地化功能测试和本地化语言质量测试。本地化功能测试检测软件本地化后的软件的功能是否全部可用,不会丢失某些功能;本地化语言质量测试在于测试软件本地化的文字是否准确、一致、符合当地用户的表达习惯,还包括对软件的用户界面进行外观测试,本地化的字符串能够完整地显示在软件界面上。依据本地化软件的语言数量,多种语言的版本往往与源语言版本同时展开测试。
 
3. 复杂的测试项目管理
 
国际化软件是一项复杂的系统工程,参与的公司和人员分布在全球各地,需要同步本地化的语言可能超过几十种,报告的软件缺陷数量可能多达几千上万,而且由于软件外包将带来很多交流和管理的问题。因此,对国际化软件测试管理提出了更高的要求,项目计划和预算管理与跟踪,测试文档管理、测试缺陷管理、技术支持和沟通交流等都比传统的软件测试项目复杂。
 
4. 测试周期时效性强
 
随着软件市场全球竞争的加剧,软件的开发周期不断缩短,对于全球发布的国际化软件来说,越来越多的国际大型软件公司追求多语言版本与源语言版本同时发布或者相隔时间尽量缩短。为了达到同步发布的目的,软件的国际化测试和本地化测试以及核心功能测试需要与软件开发过程并行进行。由于软件测试依赖于软件开发过程,而且随着软件项目周期的缩短,留给软件测试的时间经常比较紧张,尤其在软件即将发布的后期测试,对测试时间提出了较为苛刻的要求。