原文: http://blog.sina.com.cn/s/blog_6cf812be0102vode.html

前言:这个系列分享的内容大部分都是出自于《google是如何测试的》的书,不是我YY的,我只是大自然的搬用工,希望对大家有那么一点点的用处,当然后面也会有个人的一些想法。

上一次分享了google测试分享-GTA,大概说了下google是如何使用GTA来管理整个测试阶段,特别是测试计划的安排,那这次会聊一聊google测试经理是如何进行团队管理的。

为了让这些blog分享更有逻辑性,我打算分几个专题来分享google测试相关的测试理念。

google测试分享-SET和TE

google测试分享-分层测试

google测试分享-GTA

google测试分享-测试经理

google测试分享-问题和挑战

google测试分享-未来测试

首先大家可以思考下,google的测试经理角色必须具备什么样的能力。据不完全统计,google的测试经理,超过一半之前都做过TE的角色(大家可以想想为啥);对于与被测产品相关的任何使用问题,测试经理都应该是专家。所以google对测试经理的期望:相关项目中最强的产品专家。这个时候,大家是否感觉奇怪了,测试人员对业务的了解大家都是认可的,为啥测试经理也是要对业务非常了解呢,测试经理不是安排下测试任务就OK了吗。

google认为优秀的测试经理能做到如下几点:

(1)了解产品

(2)知人善用

(3)解决资源紧缺问题

(4)问题不能简单的通过增加人手来解决,就需要使用工具使其流水线化

(5)有责任优化整个测试过程,任务安排更合理

(6)不能过于依赖于某些成员,必须沉淀可用的工具或总结成一套方法,帮助其他人成为明星

那么在google测试经理是如何来安排测试任务呢,首先开发团队组织一个会议邀请一位可以信赖的测试经理,向他介绍自己的项目,希望他能够为这个项目组建一支测试团队。而那些不重视质量的开发团队,只能自己完成测试工作,因为他找不到测试人员帮助他们提高质量;同样的那些不愿意编写小型测试用例、不进行良好单元测试覆盖的开发团队将会不被理睬,自生自灭。也就是说,如果开发团队的质量意识未改变,那这个开发团队开发的产品肯定不会有专门的测试人员参与。

在google,每个工程师的目标都应该是建立影响力。测试经理没有要求测试团队来保证产品的质量,没有要求保证产品的按时发布。测试经理应该保证每项工作都具有一定的影响力。也就是说测试团队的团队目标是:一个测试团队中每位工程师都有能力完成极具影响力的工作,测试过程中的每个单元都有明确的目的和明显的效果。开发团队也非常理解测试工作并一起参与进来,直到最终完成目标,测试经理需要多思考为什么,为什么做这些事情:第一 因为它能提高产品的质量;第二,因为它能提高工程师开发产品的效率。

在某些特殊紧急情况下,测试经理在设计阶段会积极地参与,持续地跟进项目并且自己编写测试。在正常项目情况下,测试经理需要制定好项目测试策略:

(1)使用20%的测试人员进行探索式测试。任何关注用户体验的产品都需要探索式测试

(2)30%的测试工程师关注于产品的整体性测试,他们和SET一起保证测试的效果

(3)另外50%的工作是SET开发相关的自动化测试和工具,以保持代码库的健壮和提高开发人员的工作效率

相比较其他公司而言,google更强调速度,确保他们的产品足够快,测试人员进行性能分析以便于可以证明给所有人看。google的DNA就是创新精神。测试团队也应该被看做创新者。发现重要的问题并能创造性地提出解决方案。在google大部分测试TC都是自动化测试,怎么进行产品的自动化测试呢,这个比喻就像开车一样,你必须找到测试的离合点。过早编写测试,有可能由于架构的变化导致全部工作作废;若等待太久,则又可能错失测试良机而导致没有充分测试。测试驱动开发是个不错的选择。

google的测试人员非常强调产品的压力测试,发现性能退化的问题,帮助开发一期定位和解决问题。另外也更加专注于预防bug而不是检测bug,包括CI,code change push CI;由于强调对每个层次的测试范围了如指掌,特别是自动化测试能覆盖的测试范围,这样就给探索式测试的效率也带来了挑战。

测试团队获取开发工程师的支持是很重要的,整个项目团队(开发+测试)共同对组件级别的产品质量负责,而测试可以集中精力来改进流程、框架、工具集和集成测试。

测试管理者就像一个海盗船的船长一样来管理的,他给船员的真正的动力在于劫掠的生活方式和看到下一次收成的兴奋感。测试管理者要靠技术洞察力、令人兴奋的技术冒险、有趣的停靠港口来带领团队,否则船员很容易变动,去找能给他带来未来的新船长。

相比较于国内的测试经理来说,对业务和产品细节的理解就会差很多,很少TL去参加自己负责的产品的PRD评审或技术方案评审,所以给团队成员在测试策略和创新上提供的价值就会少很多,如何最优化项目的测试范围和计划,如何利用更多有效率的方法和工具上,TL的价值就会差异非常的大。那本书里面就举例了chrome测试经理是如何对于chrome的产品需求细节和技术实现细节的了解到位的,总体上还是让人很诧异的。

最后我谈谈个人对测试经理或TL的职责的理解,我觉得TL要给所有测试人员找到目标感和成就感是首要的任务,包括找到那种创新和变革的氛围。想办法减少或解决重复单调的测试执行工作,将测试人员的工作重点放在测试设计上,尤其是异常测试设计上,其中包括系统设计方案的理解,甚至是code review等,同样的,这些工作任务上,测试经理应该有很丰富的经验能指导团队成员高效的完成。

另外还希望测试经理还能给团队成员带来不一样的思考角度,包括测试技术和项目测试管理上,这就要求测试经理不仅仅非常全面的了解国内一些成熟的测试技术和正在实践的新的实践方式,还需要了解国外的一些测试理念,抽选出合适的,小而美的创新方式在项目中进行小范围的实践,这些都需要有测试技术sense和想象力才能完美的实现。

包括google在内,测试团队还是会有很多各种各样的问题和调整,测试环境问题、自动化测试问题、覆盖率问题、效率提升问题、单元测试问题、测试职业前途发展问题等等,测试团队每年的改变和目标都是在解决这些问题,一步步的解决,从未放弃,这也是互联网测试团队不同于传统测试团队最大的区别,下期准备分享google测试遇到的问题和挑战,google测试分享-问题和挑战。

转:google测试分享-测试经理的更多相关文章

  1. Google测试分享-测试经理

    首先大家可以思考下,google的测试经理角色必须具备什么样的能力.据不完全统计,google的测试经理,超过一半之前都做过TE的角色(大家可以想想为啥):对于与被测产品相关的任何使用问题,测试经理都 ...

  2. 转:google测试分享-问题和挑战

    原文: http://blog.sina.com.cn/s/blog_6cf812be0102vxer.html 前言:这个系列分享的内容大部分都是出自于<google是如何测试的>的书, ...

  3. 转:google测试分享-GTA

    原文: http://blog.sina.com.cn/s/blog_6cf812be0102viuh.html 上一次分享了google测试分享-分层测试,有很多自动化测试的策略和实施都要有一个重点 ...

  4. 转:google测试分享-分层测试

    原文: http://blog.sina.com.cn/s/blog_6cf812be0102vctg.html 上一次分享了google测试分享-SET和TE,有一些自动化测试的细节没有说清楚,那这 ...

  5. 转:google测试分享-SET和TE

    原文:  http://blog.sina.com.cn/s/blog_6cf812be0102vbnb.html 前端时间看了google测试之道,收获了一些,在此总结下并打算写一个系列blog,顺 ...

  6. Google+团队如何测试移动应用 - from Google Testing Blog

    How the Google+ Team Tests Mobile Apps by Eduardo Bravo Ortiz “移动第一”在当下已成为很多公司的口头禅.但是能够用一种合理的方法来测试移动 ...

  7. 网易测试分享会——“一起打造你想要的QA团队”

    昨天(2016.11.30)参加了网易资深测试专家王晓明的测试分享会——“一起打造你想要的QA团队”,以下为笔者做的归纳总结. 重点 1.让测试更加容易做好.不容易测试的代码,不具有健壮性. 2.Ke ...

  8. APP手工测试01-app专项测试要点-测试、开发环境-敏捷开发

    APP专项测试要点 兼容性测试 安装,卸载,升级 交叉事件 PUSH消息推送测试 性能测试 其他类型 兼容性测试 手机型号 系统版本 安卓 (版本4.4开始兼容) IOS(版本9.x开始兼容) 屏幕尺 ...

  9. APP敏捷测试,测试和开发并行!

    测试和开发具有同等重要的作用,从一开始,测试和开发就是相向而行的.测试是开发团队的一支独立的.重要的支柱力量. 测试要具备独立性,独立分析业务需求,独立配置测试环境,独立编写测试脚本,独立开发测试工具 ...

随机推荐

  1. ans_rproxy 说明

    ans_rproxy 说明 网络IP资源分配 Windows2008R2:        IP: 172.16.204.50/24        Gateway: 172.16.204.1      ...

  2. c# 字符串转Byte[],如何将Byte[]插入到Oracle Blob

    byte[] xx=Encoding.Default.GetBytes("12121232"); 插入数据库 string sqlStr = "update sys_ta ...

  3. 【刷题】LOJ 6038 「雅礼集训 2017 Day5」远行

    题目描述 Miranda 生活的城市有 \(N\) 个小镇,一开始小镇间没有任何道路连接.随着经济发现,小镇之间陆续建起了一些双向的道路但是由于经济不太发达,在建设过程中,会保证对于任意两个小镇,最多 ...

  4. 【比赛】HNOI2018 排列

    这题原题... 这题题面七绕八绕,有点麻烦,反正最后转化就是一棵树,每个点有一个值,要把所有点选完,要求选择一个点必须是它的父亲和祖先已经全部被选了,贡献是这个点的权值乘上它被选择的排名 如果一个点是 ...

  5. linux-----遇到的问题----tab键不补全sh文件不能运行

    在linux上部署tomcat,进入bin目录后 遇到了tab键不补全sh文件不能运行的情况. 如果自己输入sh文件名后也会报错: [x@web bin]$ ./startup.shbash: ./s ...

  6. [JSOI2007]建筑抢修——贪心反悔堆

    题目描述 小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建 ...

  7. 实现了一下Berlekamp-Massey

    //from https://www.cnblogs.com/TSHugh/p/9265155.html //在FP中求固定项数数列的线性递推式 //此递推式严格符合数学定义,故可能在末尾出现一些看起 ...

  8. 管理lnmp常用命令,lnmp重启,start|stop|reload|restart等命令

    LNMP状态管理命令: LNMP状态管理: /root/lnmp {start|stop|reload|restart|kill|status}Nginx状态管理:/etc/init.d/nginx ...

  9. Jquery中find与each方法使用详解

    本文实例讲述了jQuery中find与each方法用法.分享给大家供大家参考.具体如下: 一.find()方法 jquery选择器非常强大,利用css的命名规约,可以更快更方便的找出想要的元素. 图解 ...

  10. vue 和react

    React 和 Vue 有许多相似之处,它们都有: 使用 Virtual DOM 提供了响应式 (Reactive) 和组件化 (Composable) 的视图组件. 将注意力集中保持在核心库,而将其 ...