引言
我已经从事手机游戏测试员六个月了,想谈谈我最喜欢的测试-本地化测试。 在本文中,我将分享测试本地化的经验,主要是依靠文本的本地化。
关于我自己和我的工作的一些知识:我坚持以下原则:“测试人员是阻止程序员和平相处的人。 如果不是程序员,那我们就失业了,反之亦然。”
什么是本地化?
本地化是使软件界面适应不同地区,文化和语言的过程。 让我们从一般转向特别是:游戏中的本地化是指将其翻译成不同的语言并适应用户看到的所有内容中的文化,即:
前三点是可以理解和合乎逻辑的,但是我想用一个简单的例子来阐明“游戏事件和故事”这一项目:想象一个遥远的星系,在该星系上香蕉被认为是非法的。 在这个银河系中,绝对不值得经营一个有香蕉的游戏分支……这就是为什么在这个银河系的本地化中,香蕉变成绿色,咸的,并且原则上变成了黄瓜。
如何在本地化中测试文本(我通常这样做)
我要说的第一件事是,我并不假装自己是独一无二的,但是当我踏上测试信息之路时,我并没有真正找到它,还有现成的测试用例,您基本上可以在您的项目中使用它并使用它。
翻译的可用性原则上,当用户进入游戏时,除某些“确定”按钮外,所有内容都应使用其母语,这是合乎逻辑的。 我不会对此特别关注,您只需要了解
至少有一点不好就没有翻译 。
界面与翻译的结合当我在没有内置翻译的情况下转到国外站点时,我经常求助于第三方翻译,例如“ Google翻译”,自然而然地,许多站点都因为我的母语而崩溃了。 阅读此类网站会使眼睛感到痛苦,并且一切都令人难过。 就是这样,让我们继续研究现实-手机游戏。 在手机中,完全一样的麻烦是,长长的俄语文字破坏了界面的所有美感,使字段离开了窗口的边缘。 一个更不正当的问题是动画和工具提示以及其他难以理解的界面元素中的浮动文本。 重要的是要
查看文本现在和将来可能存在的所有点 。 我将特别关注“也许”,因为这是搜索错误的更有趣的地方。
对于那些对为什么这个地方更有趣感兴趣的人根据开发中使用的技术和概念,在应用程序中可以有很多用于多本地化的选项,我将在与我一起工作的项目上运行的系统上构建。 该项目有一个特殊的实用程序,用于存储密钥和用于将该密钥翻译成不同语言的选项。 在客户端应用程序上有一张带有符号的图片,可能每个人都已经看到过,最后是“ Ate soft French rolls”。 因此,根据选择的语言,必要的翻译被提取。
这就是整个故事的本质:至少有两个测试重点是上传翻译和下载带字母的地图集
为什么在那里,但不在那里?! 实践中有趣的地方碰巧的是,在翻译过程中,文本的一部分消失了,翻译者对此不负责。 从哪里开始? 一切都非常简单,如果您或您的办公室很丰富,您拥有额外的设备或虚拟机,则可以在本机本地化中打开游戏(或者在绝对正确的情况下,本机本地化并不总是原始的,a),那么研究界面是一件好事或提出疑问的地方,请比较本地化条件下的经过测试的地方。
如果仍然有问题,该在哪里挖掘?
有一个选项是系统中的这部分文本根本没有翻译。 如果您有用于上载翻译的任何特殊工具或设备,那么阅读该文档将不会很困难。 如果不是,我会在下面告诉你。
这个故事适用于使用自定义字体的应用程序。 (这些图片带有名为Atlases的字母,我不知道它们在其他地方叫什么,您可以在评论中告诉您阅读它们会很有趣) 。
- 我坚信可以翻译,但是没有文字。 我的第一个问题是,地图集是否已加载? 最简单的情况是,当我们看到空的正方形或带有十字的正方形时,那么可以确定没有这种符号,这就是重点。 但是,也许只是没有任何外部迹象就没有加载地图集(如果在类似的地方进行翻译,那肯定不是吗)。
- 我的地图集已加载,我可以在调试器中通过日志或其他方式看到此图集。 对不起,您的地图集可能会被打碎。 但是请不要失望,您可以将字体替换为从Internet上下载的字体,然后将其删除,如果出现文本,则说明您没有某些字符或其他字符(随函附上)
- 翻译非常棘手,并且具有通配符。 碰巧在某处使用了相同的翻译,例如,所有对象都有翻译“生产时间”,“重量”和其他一些计算出的参数,很容易猜到最好采用模板并在其中替换数字。 如果您计算了这样的翻译元素,那么很有可能所需数据就不会出现在某处
- 我没有任何计算字段,一般来说,只有文本的前半部分或后半部分,对我来说没有任何用处。 我什么都不懂? 我们将研究此翻译的语法,也许它具有各种有趣的括号,引号和特殊字符。 因此,也许此文本仅作为程序的一部分进行处理。
我对语言的要求
有多种语言可供测试-从文本(大字符,从右到左的字母)到语义的许多方面来说,这都是地狱。
让我们从最简单的开始,逐步了解我使用过的所有语言:
- 德语。 在这里,您应该注意变音符号(带有字母e的点的字母),字母“ Escet”,看起来像是斗鱼-ß。为此责骂)
- 俄语。 不要侵犯字母(如果节省空间,最好牺牲Kommersant)。 俄语的问题是太长的单词,但是好处是俄语非常丰富,并且也有很多同义词
- 中文。 40,000个象形文字。 这种语言由于其字符数而产生了很多问题,我的项目中很多字符根本没有出现。 我们的程序员创建了一个很棒的实用程序,可以从翻译中删除所有字符,因此游戏中不存在40,000个图集(保存内存等)
- 朝鲜语 由于句法特征(我认为是这样,或者只是歪曲的翻译者),翻译中的一些可替换参数随着数字改变其顺序而混乱了一段时间。
- 日语。 和中文一样,但是有一个巨大的BUT。 日语中的本地化由于某种原因经常由很长的单词组成,这会导致大量的布局混乱和其他后果
- 泰语。 我的最爱,我听不懂他,但是非常漂亮。 各种各样的魔杖圈子,一切都那么平滑,只有嗡嗡声。 但是可惜的是,经常会从界面上露出棍子,并且不得不牺牲尺寸。
测试文字时的有用提示和技巧
- 如我上面所说,在多个设备上进行比较。 (如果应用程序是自适应的,则最好使用不同的屏幕尺寸)。
- 不要试图去研究那里写的东西。
- 使用Google Transleate(而非广告)快速查找相关文本。 我为什么需要这个? 假设我们发现了一个文本,其中犯了一个错误,并插入了一些不可读的字符,并且在这里,原则上,一切都很容易理解,我们更改了符号,一切都很好。 是的,一切都很好,但是语言是中文。 Google翻译可以理想地从照片中识别所有这些象形文字,并将它们翻译成任何语言的文本,这意味着我们可以找到俄文并进行比较。
- 使用Google翻译(我喜欢,您可以使用任何一种)来检查文本的逻辑。 基本的,如果翻译和理解,然后正确翻译,插入那里,完整显示,否则不能。
- 至少在Wikipedia上学习该语言的功能。 而且,完全不需要语言知识。
我将重点介绍Google音译;出于某种原因,就我们个人而言,尽管我们很多人都使用此功能来翻译照片中的文字,但在我们部门中没有人会想到使用翻译器。 (可能有人在训练中使用或使用)。
纹理。 声音。 游戏活动
我将所有三个点组合成一个大杂烩,因为在移动游戏中这是一个局部对象。 好吧,卡蒙,这些不是来自著名影城的昂贵玩具。
我们从
纹理开始强调每个组中需要测试的主要方面:
- 在具有本地化语言中的文本(国际符号和徽标除外)的纹理上
- 带有文本的纹理(如果已动画化或以某种方式进行了编辑(移动,旋转,库存),则仍保持可读性。 我想说明一下反转,这是指一个伪3D游戏,其中的旋转是通过图片的反射实现的- 带有文本的纹理不应旋转
关于声音:- 如果游戏中有声音表演,那么自然应该使用本地化语言(您会在本文中多次看到有关本地化的类似建议,但这确实很重要)
- 声音,视频和动画。 就像电影一样。 声音应尽可能与扬声器或动画融合,无论是希望用中文造好的石头,还是用德语谈论太阳的小鹿。
关于情节如我先前所写,在每个星系中,其淫秽事物都是可能的。 关于地球上的国家,我们能说些什么。 这就是为什么,取决于发行游戏的国家/地区,特别是如果它是超保守的编辑,可以使自己(或全部)拥有大量(一组)股票,游戏对象和情节等。 但是同样,这仅对于本地化语言不广泛的国家/地区是正确的。 例如,如果语言是英语,那么几乎任何主题都可以在某个讲英语的国家/地区启动-这肯定会找到答案,并且会被正确理解。 如果允许英国人发起“彼得和费夫罗尼亚”的盛宴,而不是“情人节”,那将被认为是很奇怪的。
- 在这里,您需要测试绝对的所有功能,这些功能在某种程度上根本不同
- 更改本地化时是否启动其他功能
- 从另一个本地运行功能会发生什么
还有更多。 在这里,您必须努力并提出大量测试用例。
本地化者有什么共同点,或者它们会阻塞什么
性格在游戏中,您经常会发现,在不同的翻译中,拟声词可能会消失,从游戏性的角度(角色不再被揭示)来看,这是非常关键的,尤其是对于动物而言,这尤其重要。 这不会影响游戏玩法和性能。
配音在没有必需的声音表演的情况下使用英语声音表演非常有趣。 在这种情况下,您应该注意,从逻辑上讲,声音和文字原则上是关于同一件事的。 否则,结果会很丑陋,不仅他们在语言环境上得分高,而且还漏掉了错误的语言。
未完成的项目或削减的内容加速和适应语言环境的最常见方法可能只是删除不适合的内容。 重要的是要确保所有重要的事情都不会丢失,包括在完全不同的地方。
结论
我非常希望这篇没有图片的简短文章将带您找到一些新的测试方法。 感谢您的阅读。 我会很高兴与增加! 我要求你不要发誓,这是我的第一篇文章。