谷歌的软件测试之道读书笔记

谷歌的软件测试之道读书笔记

Google 的测试流程可以非常简练地概括为:让每个工程师都注重质量。如果我们都诚实认真地这么做,质量就一定会提高。代码质量从一开始就能更好,早期构建版本的质量会更高,集成也不是必须的,系统测试可以关注与真正面向用户的问题。所有的工程师和项目才能从堆积如山的 bug 中解脱出来。

对于 Google 软件测试之道,其实我更关注的是 Google 现在正在做的测试改进,因为书中所写的内容,已经是谷歌6-7年前的流程实践了,也许国内大部分公司的研发基础没有 Google 的完善,但通过参考 Google 自身对自己流程的改进的思考,发现这个国际领先的科技公司是怎么思考研发生产力的,并通过结合公司目前的实际,寻找一条更高效的改进之道。

我们不倡导直接步伐太大,因为很容易导致改进失败,所以了解未来趋势,迭代去改进,也许能让我们走更少的弯路。故核心我还是以《谷歌的软件测试之道》第五章为核心。

Google 的测试流程还有什么致命的缺陷?对我们的借鉴意义是什么?

第一个缺陷:测试成了开发的拐杖

或者换一个说法能更容易理解:测试变成了开发的保姆。

这个是目前国内存在的,特别突出的问题。各个公司测试最常吐槽的就是:开发自测都不自测就提交代码,导致测试过程中经常会流程阻塞,完全无法测试,无形中测试有一大部分的排期时间就这样被吃掉了,而且会造成开发和测试团队内部的严重推诿和互相指责。特别是如果测试是单独一个部门,并且不和开发坐在一起的时候,会显得更加严重。开发会认为保证质量是另外一个部门,另外一群人的责任,跟他无关,他只需要把代码快速堆砌好就可以了。

第二个缺陷:开发和测试的分离造成了基于角色的关联,阻碍了测试人员对产品的关注

在团队内部,任何角色被过分强调都是不合理的,团队的目标不是一个角色就能完成的。团队的每个成员都应该以团队的核心目标为主,我们是为了产品变得更好而努力,而不是单独做好某个流程,因为用户爱上的是产品,而不是开发产品的流程。

第三个缺陷:测试人员往往崇拜测试产物胜过软件本身

对于被测代码来讲,测试工程师生成的测试产物都是次要的:测试用例是次要的,测试计划是次要的,bug 报告是次要的。……所有测试产物的价值,在于他们对代码的影响,进而通过产品来体现。

虽然不可否认这个说法会很伤测试工程师的士气,但是这个前提是没有错的。如果太过于重视测试用例、测试计划和 bug 的报告,但不关注测试活动对代码的影响,我认为更直接的说法应该是:测试活动对代码的覆盖广度和深度,并且这种覆盖要是有效的。

最近测试正在推进的精准测试和测试参与 code review 的活动,就是为了让测试活动重点放在产品的源码上,让测试活动集中在更重要的功能代码,并且有数据可衡量。

第四个缺陷:过于强调测试职位人的测试,忽略了“谁做测试并不重要,关键是进行了测试”。

测试流程再严格,都很难避免线上用户遇到问题,所有,让更多的人,包括但不限于开发者本身、内部使用者、可信赖的测试者、众包测试者或者早期的外部用户都比测试更容易发现问题,所以,其实使用 A/B 测试的方式,指定用户进行使用,并加强跟踪,做好问题的及时响应,对于企业来讲是速度和效率更平衡的方式。

SET 的未来

  • 简单地讲,SET 没有未来,它本来就是开发工程师。
  • 测试特性应该由团队的新成员负责,特别是那些资历尚浅的员工。
  • 测试的技能被平均地分散到各个层级的开发工程师身上,而不是集中于测试开发工程师那里。

从这一点上可以看出,SET 是技术开发在发展中必然会经历的一个阶段,它更多是弥补开发团队对测试技能和质量意识掌握不够导致的团队能力缺陷,能够给整个团队带来很好的技术补充,但是普通的测试开发往往很难将开发出来的工具和技术框架落地,并惠及到大部分的团队成员,其实核心也在于如果团队成员不具备对测试的理解技能和开发技能,但这一点在国内行业未来几年基本还得不到太大的改善,毕竟中国的开发者水平和国外的开发者水平差距还是比较大的。全栈工程师不是必要的,但全栈工程师能带给团队一些技术和意识上的补充,并在各个模块中间起到很好的技术推进和优化作用,是团队升级的引擎。SET 在我看来,有很好的成为全栈工程师的基础。

TE 的未来

  • 通过互联网交付软件,意味着我们有能力选择部分用户进行发布,响应这部分用户的反馈,并迅速进行更新,降低用户对错误的感知,从而降低 bug 修复成本。
  • 测试工程会转变为测试设计。
  • 少量的测试设计师快速地规划处测试范围、风险热图和应用程序的漫游路线。
  • 然后内部社用着、可信赖的测试者、早期用户和众包测试者提交反馈,由测试设计师来评估覆盖率,计算风险影响,确保发现的问题不断减少,并相应地对测试活动进行调整。

核心我觉得就是一句话:测试工程师会转变成像安全工程师这样的专家型角色,或者他们会变成测试活动的管理者,而那些具体的测试活动则由其他人来完成。

这个角色真的是一个非常有挑战性的工作,需要非常丰富的专业技能,并且对产品有深刻的认识,对业务价值的准确的理解力和判断力,通过对功能的分析,能够快速定义测试活动的内容和范围,并找到合适的测试资源去执行测试活动。

测试总监和经理的未来

这些人的数量将会大幅减少。会作为思想领袖,为维系松散的测试工程师和负责质量的软件工程师的关系而存在,但不会最终为某个特别的质量或管理负责。

总而言之,纯管理的测试基本不存在。

未来的测试基础设施

测试基础设施最终会整体迁移到云端。

也可以换个角度看:目前的测试框架和工具,都可以实现云端一键执行,云服务化带来的是测试活动成本的进一步降低,但对测试的技术要求会更高。也就是说,核心在于云端工具的开发和进一步维护,并且在有效的活动范围内结合必要的工具进行测试活动。

结论

我们熟知和喜爱的测试方式即将终结,随着敏捷开发、持续构建、早期用户介入、众包测试、在线软件交付的不断兴起,软件开发的问题也已经彻底改变。

也许,国内离这种改变还有几年,但是这种趋势对我们来讲,只是时间上的问题而已。这种变革,其实给了测试更大的机会,从技术和业务价值上,测试这个活动会融入到研发的流程细节中,而测试团队将更精英化,更技术化,不再是以前的人海战术,从一定层面上来讲,也将逐渐脱离看不到边的 bug 海,做到上线心里有底,研发质量不断提升的目的。而且,这个时候,人工智能和测试这个活动的结合,魅力就更加无穷了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,398评论 25 707
  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 9,186评论 2 126
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 21,925评论 7 277
  • 淅淅沥沥 在记忆的月光下 雨水滑落你的发梢 是那么美 我穿越熙熙攘攘 走进你的世界 与你并肩 听风雨 却是韶华易逝...
    雨境阅读 305评论 0 1
  • 我是河南人。因为从我太爷爷开始,就一直在河南,我的根在这里,所以我理所当然的也是一个河南人。 不过,我可能算不上一...
    使徒的颠覆阅读 1,065评论 11 13