《How Google Tests Software》读书笔记

      花了一周的时间艰难得把第一章看完了,看的过程中,同步回想华为的研发流程。GOOGLE作为全球互联网业界的老大,对比作为通信行业翘楚的华为,很多工作方式都是互通和重合的,但由于行业的不同,很多做法也是有所区别。

        这一章让我感触最深的一节是:质量不等于测试。GOOGLE目前是没有独立的测试团队,GOOGLE在 2011年左右决定解散测试团队,全面融合到研发团队中,开发人员需要同时拥有和测试的技能;仅仅保留少量的非常专业的测试顾问,负责超大型项目的测试设计,或者是研发团队测试能力建设工具。他们这种做法的主要思路就是做大组织的解耦,按照业务模块即最终的业务目标和结果划分成足够小的业务单元,让业务单元自运作起来。只有这样才能充分激活组织活力,保证组织高效。跟美国的要州权,不要大政府是一个道理。

      在华为,代码质量的第一道测试是在开发团队。在华为的时候,我的岗位是软件开发人员,部门每天都有每日构建,本地环境编译不了的代码是根本不敢上库的,因为每天的四点,CI会针对库内最新代码进行编译构建(如果发现编译不过,上错代码的人将会受到项目经理的警告,年度绩效会受影响),然后将该版本发送到自动化测试环境进行测试,一般一个流程是8小时左右,第二天上班的时候,上过代码的人会主动查看自动化测试情况,查看前一天上传代码是否有影响现有的测试用例;如果有问题,立刻定位,定位后会在本地进行编译和用例测试,保证问题解决。这个是开发参与测试的每日活动。

      华为是非常注重单元测试,也就是GOOGLE说倡导的小型测试阶段,在这个阶段,开发每开发一个模块时,会设计对应的单元测试用例代码,编写MOCK对象代码,做LLT(low level testing)。当耦合模块完成后,几个开发人员会针对耦合点合作设计用例,有时候项目的对应TE也会参与用例设计,配合开发人员完成耦合测试。开发人员参与的测试阶段一般都是在功能编码期。

        完成各模块编码后,开发会提交TR4版本(IPD流程针对雏形产品的一个阶段版本,工程样机评审阶段),提交该版本时,各模块开发人员会针对负责模块的代码进行pclint,使用代码规范工具对代码进行代码规范检查,将不符合代码规范和有缺陷隐患的代码分析出来,让开发人员进行确认,尽可能在最早的时间发现越界或者空指针等低级bug。并且会结合测试的测试用例,对自己负责模块进行自验证,保证提交的版本不会出现block级的问题,导致项目延期。所以经过这样“折腾”的测试版本发出去,低级问题出现的概率就相对比较少了。

        对于测试何时介入到项目,华为和GOOGLE有不同的解读。因为GOOGLE没有专属的测试团队,因此公司把涉及到测试活动的人分成三种角色:SET,SWE,TE。SET是单纯的功能开发开发人员,他们主要涉及的测试活动是小型化测试,即单元测试,属于测试的前锋军;SWE是测试开发人员,贯穿整个产品开发周期的,主要职责是编写测试工具,自动化测试用例,接口测试代码以及配合TE做一些“破坏性”的测试代码等工作,其实他和SET的工作职责是想溶合的;TE是一个面向用户的测试角色,主要职责是大型测试的设计者和执行者,同时他也会参与到代码检视和代码分析修改中,和SWE最大的不同是TE是在研发后期才介入到项目,而SWE是贯穿整个研发周期。

        而在华为,测试团队会有一个TSE在TR1(需求评审和概念)阶段就进入这个项目,和SE,市场的人一起对需求进行分解,对实现进行规划和应用场景的划分,这个人对整个项目的业务流程特别了解,到了TR3(详细设计阶段),他会针对这个项目的主体流程对TE进行串讲,再由TE们反串讲,然后再引导TE们和开发人员对接,对首版自动化用例编写用例,由SET们编写自动化测试代码。这样随着TR3阶段的完成,自动化测试代码已经基本成型,手工测试人员也能完成高质量的测试用例,保证系统的完成性和稳定性。最重要的,当时的一个项目团队是一体的,开发和测试结果是向同一个产品经理(这个产品经理一般都在研发和测试工作过,并且在市场呆过,了解客户痛点)汇报的,这样也能保证对等性。这一点,GOOGLE的整体流程也是基本相识,也许只有做到对同一个人负责,才能更好达到目标上的统一。,

        阅读还在继续,感触也是不由而发,读英文原版书确实很让人奔溃,但是也是一种对自己的挑战。但是可以通过书获取业界最in的行业知识,技术知识,也是很快乐的一件事情,

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

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,110评论 25 707
  • 软件测试介绍 少则清晰,测试人员的稀缺导致测试资源很昂贵。(不要招聘太多的测试人员) 质量不等于测试 开发对质量负...
    mania_yan阅读 3,422评论 0 0
  • 喜欢简单的素菜。喜欢简单的生活方式。现在高科技,电子产品无处不在。但我还是原始生活方式。不喜欢吹空调,喜欢手洗衣服...
    书之姐姐阅读 355评论 0 0
  • 静静地夜,清清的湖,我悬一壶清茶与自己轻轻的聊~~~ 你知道风带着彩云飞,雾里看花梦中回肠,载一清歌遍知天上人间五...
    寻灵阅读 229评论 0 1
  • 清明时节雨纷纷^ 每每清明必逢雨,今日小雨如期而至^^ 昨日阳光正好^愿雨过天晴,温暖一直都在^^
    南有麋鹿0io阅读 241评论 5 3