1. TVT 简介及其当前主要困难,瓶颈
翻译验证测试(Translation Verification Testing,TVT) 是 IBM 全球化测试中的一个很重要的测试之一,一般会由来自于 TSC(Translation Service Centers)的翻 译人员和来自 GSSC 的 TSE(Translation Service Engineer)合作完成。TVT 主要的工作在于验证翻译的 PII(Program Integrated Information)字符在经过软件产品的重新编译,生成 build 或者与其他软件产品 集成之后,能否正确的显示在相应的界面上,而不是产生了一些改变或者是错误。同时翻译人员在测试过程中 作出一些必要的字符修改,从而进一步提升软件产品的一致性和准确性。
在 TVT 过程中翻译人员必须 通过一系列步骤,找到相应的 UI 界面去测试每个界面上出现的 PII 字符内容,而这些步骤往往由 TSE 提供 。由于一款软件产品往往会翻译成多国的语言,所以 TVT 测试中常常会需要安装配置多种不同语言的环境去 测试,多的甚至可以达到 20 几个语言,如果一个项目中 case 数量很大,很多项目都是几百只的 case,那 么工作量是很大的。目前 TVT 的形式有三种,第一种是 online 形式的测试,是指 TSE 人员准备所有的 case,然后翻译人员按照 case 所指示的步骤去 run,找到相应界面然后做验证。第二种是 Screen Capture 形式,是指 TSE 自己跑出 case,然后截下相应界面,最后所有 case 以图片形式发给翻译人员验证。最后一 种是前两者的结合,简单的 case 由 tester 自行去跑,复杂的 case 由 TSE 帮忙截图给翻译人员验证。由 于如果让 tester 直接看图片验证可以大大的提高效率,而且简单便捷,故而截图模式的 TVT 在现行的 GSSC 部门使用率比较高,很多 case 数量不多的项目常常选用该模式来进行。这样一来,TSE 人员的工作负担就加 大了,而且相同 case 在不同语言下截图,基本都是重复劳动,而且手工截图考虑到人员的效率,一天截图量 是有限的,如果能够利用相关的自动化截图就可以减少人员重复劳动。
2. 截图带来的效果及,优点及 其对流程起到的作用
TVT 过程一般有三轮以便在测试过程中对发现的问题或者所做的更改做相关的更 进,从而提高软件产品的质量。同时在 TVT 过程中,由于翻译人员对产品或者软件知识的有限性,在与 TSE 人员的相关沟通中往往会花费大量的时间。如果直接使用截图模式,那么一切活动都变得很简洁。翻译人员只 管负责翻译相关内容,同时通过截得的图片验证翻译内容是否正确显现。从而减少了和 TSE 人员之间很多关 于 case 步骤的探讨,减少了很多时间的浪费,提升了很高的效率,而且翻译人员看一张图片时间和之前跑一 个 case 相比,效率也大大的提升。跑一个 case 的时间中大概可以看过 5 张以上图片。这样的话翻译人员 的操作流程就变得非常简便,和之前的流程相比省去了和 TSE 之间关联,降低的流程之间的耦合度。相对于 TSE 人员来说操作也更加便捷,不用花费额外的时间去教导翻译人员如何跑 case,出现问题如何解决。
3. 目前多种自动化方案的不足
目前在 TVT 过程中也有很多自动化的解决方案在使用,很多方 案都有其独特的性能和优点,但也有其一定的局限性。比如使用 Selenium 自动化截图方案,该方案在基于 Browser 的项目中使用起来效果显著,可以给 TSE 人员带来很大的便捷,编写一个脚本,可以重复使用,截 取很多不同国家语言的相应 case 的图片。可是相对于没有 Browser 的 IBM 产品来说,Selenium 就很难使 用上去,同时很多 IBM 产品本身就不是基于 Browser,很多事基于 Eclipse 内核的产品,比如很多 Rational 的产品,故而使用范围受到限制。
也有一部分解决方案采用使用项目之前 FVT 和 GVT 测试 脚本进行改进,从而实现 TVT 项目自动化。不过由于很多项目本身没有 FVT 或者 GVT 测试脚本,所以这样 的项目就只能忽略,而经过实际项目测试会发现使用测试脚本的项目数量不多,同时还有一个对脚本的整理, 改进和调试的过程,因此使用该方法操作TVT自动化也有一定的局限性。
4. Snagit 的简介以及与 RFT 的集成
4.1. Snagit 简介
Snagit 是一款非常出色的图像、视频、文本截取和编辑软件。 这款程序可以捕获 windows 操作系统的屏幕,同时对截取的图片可以进行编辑。TVT 截图就可以使用这款工 具来截图同时对图片上的字符做相应的标记让 tester 去验证。
这一小节主要利用 RFT 和 Snagit 的相互结合使用来实现在 TVT 过程中,尽可能简单便捷的实现截图。 主要原理如下:
图 1. 任务流程