如果你是一个有竞争力的软件测试员,并且熟练掌握除英语之外的一门外语,你有了很有价值的技能。

1、使文字和图片有意义

软件的国际化

除了语言,还需要考虑地域(region或locale)??用户的和地理位置。

使软件适应特定地域特征,照顾到语言、方言、地区习俗和文化的过程称为本地化(localization)或国际化(internationalization)。测试此类软件称为本地化测试。

2、翻译问题

尽管翻译只是整个本地化工作的一部分,但是从测试角度看这是重要的一环,明显的问题是如何测试用其它语言做的产品。

软件测试员或者测试小组至少要对所测试的语言基本熟悉,能够驾驭软件,看懂软件显示的文字,输入必要的命令执行测试。

注意:软件测试小组一定要有人对测试的语言比较熟悉。

对多种语言的情况,可以委托本地化测试公司进行测试。

(1)文本扩展(text expansion)

实践证明,当英语被翻译为其它语言,用来表达同一事务时往往需要加一些字符。

一个好的大拇指规则是每个单词长度预计增加100%。

因为这些扩展现象,故必须仔细测试可能受到变长了的文本影响的软件部分,要找出没有正确换行、截断的和连字符位置不对的文本;还要找到虽然文本有足够的扩展空间,但这是通过把其它的文本挤出去来实现的情况。

变长了的文本还可能导致主程序失败,甚至系统崩溃。

(2)ASCII、DBCS和Unicode

ASCII字符集只能表示256种不同的字符??远不足以表示所有语言的全部字符。

当开始为不同语言开发软件时,需要找到克服该限制的解决方案。

常用的一个方法是代码页(code page)技术,实质是ASCII表的替换,每一种语言用一个不同的代码页。

这个方法虽然笨,但对于少于256个字符的语言还是可行的。但对于中文、日文则不行。这时,使用DBCS(双字节字符集)的系统提供对超过256个字符的语言的支持。用两个字节代替一个字节来表示多可容纳65536个字符。

代码页和DBCS在许多情况下足够了,但是会遇到一些问题,重要的是兼容性问题。

解决这个麻烦的方法是使用Unicode标准。

Unicode为每一个字符提供编号,无论何种平台,无论何种程序,无论何种语言。

(3)热键和快捷键

在软件的本地化版本中,需要测试所有热键和快捷键工作是否正常,而且使用起来不困难。

(4)扩展字符

本地化软件,甚至非本地化软件中存在的一个常见问题是扩展字符(extended characters)。

扩展字符指的是普通英文字母A~Z和a~z之外的字符。

测试扩展字符的方法是找出软件所有接受字符输入和输出之处。在每一处尝试使用扩展字符,看能否与常规字符一样处理。对话框、文本域都是合适的对象。

技巧:测试扩展字符是否被正确处理的简单的方法是,把它们加入测试的标准字符所在的等价划分之中。