Patrick Copeland是谷歌公司高级工程总监,最近接受UTest公司的采访,讨论谷歌公司测试的方法和理念。Patrick Copeland加入谷歌之前在微软工作过10年,负责BizTalk, Dynamics和Internet Search(Bing前身)等工作。2006年加入Google,目前带领着800人的工程团队。
问(UTest):如何面对来自全球用户或客户的挑战?有些产品很成功,有些很杯具,这些都对你们产品规划起着什么样的作用?
答(P):确实如此,有些产品和特性比另外的要好些。我们做大量的实验,快速发布版本并不断迭代。版本发布以后先让部分用户试用,听取他们的意见,观察易用性。客户会“用脚投票”,活跃性的变化可以帮助我们作出判断——好的产品和特性会被改进,而那些表现不好的则会被放弃。我们需要快速的客户反馈,如果是一个失败的产品,那么我们希望是快速的失败——Fast Fail。
如你所说,不同地区的用户对我们的产品有不同的需求。而我们希望google的产品让用户感觉“很本土”,这就需要针对不同的市场提供不同的功能和特性。例如,印度语产品很难使用和标准产品一样的默认键盘,所以我们开发了虚拟键盘,并在页面中添加基于类别的检索。由于我们根据不同市场订制产品,这给测试提出了更大挑战(例如,一些测试需要对其他地区的文化的了解)。当不能在内部找到类似资源时,基于社区的测试就是一个应对此挑战的有趣的解决方案。
根据产品性质,我们将产品可以分为以下类别。
1)战略型: 也许是新功能,但可能已经有竞争对手(例如Android)
2)财务性:搜索和广告
3)用户型: Gmail
4)遗留产品:例如CheckOut需要符合SOX法令。
问:你以前说过“在一个领域呆着越久,知道的越少”,作为开发和测试人员如何保持继续学习的心态?
答:我们在招聘的时候会选择那些有测试DNA的人,他们对测试有热情,热爱软件。这些人有着天生的气质接受挑战,不断的学习。
同时,必须要说的是,行业正在发生飞速的变化。过去几年,我们就见证着云计算如何快速改变着软件。相应的,我们的软件开发流程也在发生着一样的巨大变化。我们正在重新审视着那些由传统软件开发公司创建的体系和知识。同样,测试团队也要快速融入到潮流中,与行业发展保持一致。