在刚结束的2016Unicode Conference上,来自Google的Kat Momoi先生分享了他的topic——Releasecriteria and mobile i18n testing toolbox。其中不少战术打法与作者思路惊人暗合,看来是同道中人哦!遇到了一样信奉“控球”的战术控,感触着实良多,特发文略作点评一二。

作为StaffTest Engineer and I18n Consultant,Kat先生最近几年一直致力于研究如何更高效的在手机端进行国际化测试。(注意!是I18n,不是L10n),尤其是在实施敏捷模型的开发过程中,如何更快捷的多语言(70+)支持的产品进行国际化测试。

开篇Kat先生就列举了目前他面临的挑战。(其实我们又何尝不是呢?)

·        如何清晰的将i18n和l10n剥离开来?

这就是我常说的“二化分离”,上帝的归上帝,凯撒的归凯撒!

·        如何尽早的发现所有i18n问题?

用我的话就是怎样进行“高位逼抢”?尽可能的不让战火燃烧到我方半场,在devdeliver第一个函数,甚至第一行代码时,“逼抢”其实已经可以开始了。

·        只关注localizability的问题,而不是localization本身

该问题本质上还是要处理好“二化分离”,翻译质量相关问题交给LQA,而不是国际化测试人员。归根结底,他们是技术人员,而不是翻译专家。但与代码相关的所有国际化问题,就责无旁贷了,都应该统一进行“高位逼抢”,在开发阶段即进行测试并指出问题根源所在。

他给出的解决方案如下。

·        提供i18n测试检查点列表 + 最优测试方案,同时让dev team review并提供他们的意见建议

我一直宣扬的“人盯人+贴身防守”就是这个意思,只有跟dev team不断的交流,融合甚至绑定,才能真的提出所谓“最优方案”。否则面对一个巨大的黑盒,鬼才信你能做出任何优化。

·        方案+列表一旦生成,就需要在测试过程中严格执行

·        利用或开发测试工具来提高效率,节省测试时间

这点非常重要,调侃时我常说“会使用工具,是人跟其他动物的本质区别!”。当然,如果在抽烟过程中,这句话就要换成“会使用火”……

Kat先生也在slides中提供了一些自己团队开发的开源国际化测试工具、框架以及使用场景,未来我会单独写一篇文章来专门介绍。

·        Dev team负责并保证基本i18n test coverage

这跟业内某些团队宣称的dev own i18n quality基本是一个意思,然而笔者不敢苟同。站在dev的角度,i18n确实是产品中的边边角角,这是毋庸置疑的。在主要功能都无法保证完成或者无法保证质量的情况下,还要求dev负责i18n的test coverage,这岂非强人所难?另外,站在国际化测试团队的角度看,本就不富余的一亩三分地还要划出一片,拱手将这大好河山送与他人,失去了本可建功立业,腾挪跌宕的空间,意欲何为呢?当然,笔者可能有些狭隘了!没关系,我已经把这些想法mail给了Kat先生,也很想听听他的想法,那时候再分享给大家。

“理想”的工作流

1.      开发团队负责i18n代码审查+校验,国际化团队不需要参与其中

关于这点笔者并不认同,原因如上所述。

2.      提供翻译服务(注意,这已不是engineer team的分内之事)

一般的软件公司都不具备,也没有必要准备这样抑制常规军,外包给专业的语言服务公司或利用自身的技术优势,采用machinetranslation即可。

3.      可能的话,完全自动化整个翻译的流水线

在这里我想补充的一点是,在action 1之后应添加如下内容。因为尽管我们都大力倡导“高位逼抢”,但这并不意味着传统的防守方式将被彻底放弃。

1.1  利用自动化脚本(最好是API级别,而非UI)进行回归测试

1.2  黑盒业务测试人员对new feature部分进行探索性测试

(未完待续……)

2016 Unicode Conference拾遗(一)相关推荐

  1. 42th Unicode Conference随笔(一)

    三国曹丕的<典论·论文>中说:"文人相轻,自古而然."这话其实还有后句的,叫"武人相重".而我辈应当算作文人?抑或武人呢?窃以为还是偏武多一些,毕竟 ...

  2. 2016年计算机视觉和图像处理相关的国际会议一览表

    Informations of 2016 International Conferences in Computer Vision and Image Processing (To be update ...

  3. Towards Open Set Deep Networks(CVPR 2016)

    Bendale A , Boult T . Towards Open Set Deep Networks[C]// 2016 IEEE Conference on Computer Vision an ...

  4. 学习索引结构的一些案例——Jeff Dean在SystemML会议上发布的论文

    2019独角兽企业重金招聘Python工程师标准>>> 学习索引结构的一些案例 The Case for Learned Index Structures Tim Kraska1 M ...

  5. <论文翻译>RepVGG: Making VGG-style ConvNets Great Again

    RepVGG:让VGG风格的卷积网络再一次伟大 文章目录 RepVGG:让VGG风格的卷积网络再一次伟大 摘要 1. Introduction 2. Related Work 2.1 从单路径到多分支 ...

  6. ​使用端到端立体匹配网络进行单次 3D 形状测量,用于散斑投影轮廓测量

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 标题:Single-shot 3D shape measurement using an end-to ...

  7. 2020最新点云深度学习综述

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 论文阅读模块将分享点云处理,SLAM,三维视觉,高精地图相关的文章. ●论文摘要 点云是在三维空间中点 ...

  8. 3D视觉创新应用(三维重建)竞赛作品系列——人体三维精准量测与动作捕捉

    一.背景介绍 1 项目背景与国内外研究现状 1.1 项目背景分析 近年来,RGB-Depth(RGB-D)传感器,如Kinect V1,和Structure Sensor等,在室内即时定位与地图构建应 ...

  9. TensorFlow实现基于深度学习的图像补全

    第一步:将图像理解为一个概率分布的样本 你是怎样补全缺失信息的呢? 但是怎样着手统计呢?这些都是图像啊. 那么我们怎样补全图像? 第二步:快速生成假图像 在未知概率分布情况下,学习生成新样本 [ML- ...

最新文章

  1. 云答题微信小程序 实现 前端加后台管理
  2. SQL SERVER 2012/ 2014 分页,用 OFFSET,FETCH NEXT改写ROW_NUMBER的用法(转)
  3. linux第一天的简单整理
  4. Gentoo 安装日记 08 (安装stage3: 设置时区 和 Hostname)
  5. java中读取Excel表格中的数据
  6. linux下c语言按q退出_Linux C编程之一:Linux下C语言的开发环境
  7. C++学习笔记(八)——内联函数
  8. win10系统开不了机
  9. 【分块】区间众数(金牌导航 分块-1)
  10. 【EOJ Monthly 2019.02 - F】方差(数学,前缀和,积的前缀和)
  11. EasyUI_datagrid
  12. python123判断字符串结尾_Python学习教程:在字符串的开头和结尾处做文本匹配
  13. Dcmtk在PACS开发中的应用(基础篇) 第二章 打印影像(胶片) 作者 冷家锋
  14. python ocr 文字识别软件,Python文字截图识别OCR工具实例解析
  15. pip添加国内镜像源
  16. ORACLE RAC 12C(12.1.0.2)数据库软件安装步骤
  17. pgAdmin III 使用图解
  18. 人工智能培训:是学不好,还是教不好?3岁半的 BitTiger关闭
  19. 比较全的敏捷概念知识总结
  20. 团队作业6——展示博客(alpha阶段)

热门文章

  1. 第九章总结 java常用类
  2. 墙面有几种装修方法_装修时墙面处理都有哪几种方式?
  3. 【CCF推荐专区】计算机类优质SCIEI好刊,期刊质量高,部分期刊仅有少量版面
  4. 【PE结构】由浅入深PE基础学习-菜鸟手动查询导出表、相对虚拟地址(RVA)与文件偏移地址转换(FOA)...
  5. Bilibili到底有多少御坂妹?(二)
  6. 2021年特种设备作业锅炉作业-工业锅炉司炉 (G1)考试题库
  7. python中什么的布尔值不是false_不是python中的布尔值
  8. 将ResNet分类器做成一个小网站界面
  9. 将JAVA bean/实体类 中为null的属性值转换成空字符串
  10. [游戏记录]滚动的天空