注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

dp: 生活的脚步,进步的点滴...

Cam、DSP、FPGA、PM、Life、More ...

 
 
 

日志

 
 

谷歌软件测试的方法和理念  

2011-07-27 14:25:42|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Patrick Copeland是谷歌公司高级工程总监,最近接受UTest公司的采访,讨论谷歌公司测试的方法和理念。我觉得很多观点都很精彩,摘选一些对话,和大家一起分享。

  Patrick Copeland加入谷歌之前在微软工作过10年,负责BizTalk, Dynamics和Internet Search(Bing前身)等工作。2006年加入Google,目前带领着800人的工程团队。

  原文在连接: http://blog.utest.com/testing-the-limits-with-patrick-copeland-part-i/2010/02/

  问(UTest):如何面对来自全球用户或客户的挑战?有些产品很成功,有些很杯具,这些都对你们产品规划起着什么样的作用?

  答(P):我们的方法是做大量的实验,快速发布并且不断进行改进。我们尽早的(early),快速的(Fast)更新软件,并且认真收取用户的反馈。

  根据产品性质,我们将产品可以分为以下类别。

  1)战略型: 也许是新功能,但可能已经有竞争对手(例如Android)

  2)财务性:搜索和广告

  3)用户型: Gmail

  4)遗留产品:例如CheckOut需要符合SOX法令。

  问:你以前说过“在一个领域呆着越久,知道的越少”,作为开发和测试人员如何保持继续学习的心态?

  答:我们在招聘的时候会选择那些有测试DNA的人,他们对测试有热情,热爱软件。这些人有着天生的气质接受挑战,不断的学习。

  问:谷歌每两个星期就发布一此软件,那么谷歌是如何平衡已有软件和新软件的投入?

  答:在谷歌,有着70/20/10原则,70%投入已有核心产品,20%与新产品相关,10%是高风险创新产品。

  谷歌有很好的测试基础设施,例如每天5000个CPU进行65K次编译,执行超过100M测试用例。 Build和测试系统为了适应负载需求,每年增长75%。项目的平均Build和测试时间是4分钟。在谷歌,产品组总是维护一个可用的版本(Green Build),因此,我们在建设测试系统时候,非常注重以下几个方面。

  1)速度:所有的测试和分析都应该非常快。

  2)反馈系统:测试系统必须是高质量的。我们希望工程师在任何时候都保持产品高质量代码,而不是出问题才修正。

  3)简单:透明使用,高效工具

  问:优秀(Good)测试人员和卓越(Great)测试人员的区别是什么?

  答:优秀测试人员是可以培训的,他们有好的背景,理解客户,熟悉开发流程等等。卓越测试人员是可遇不可求的,非常稀少的。卓越测试人员通常都是卓越开发人员,但是卓越的开发人员未必是卓越测试人员。对于卓越测试人员来说:1)他们有很好的直觉找到真正问题 2)他们对于测试有极大的热情。

  问:设计,开发和发布高质量的软件过程中,最大的障碍是什么?

  答:每个产品都有自己独特的开发方法,其中有许多变化。项目要根据自己的情况在敏捷和严格流程中找到自己的最佳平衡点。

  问:对于想成为资深技术人员的年轻软件工程师,你有什么建议吗?

  答:

  1)注重技术

  2)成为创新者和组织者

  3)把握自己职业:不要等待别人来赏识你。告诉他人你的想法和成果,你是你最好的广告牌。

  4)发挥你的强项:选择你喜欢的项目,你能够取得更大影响。

  问:你是否特别喜欢的开发语言?

  答:没有,谷歌最常用的就是Java,Javascript,Python,Perl和C++。

  评论这张
 
阅读(486)| 评论(0)
推荐

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016