讨论:研发团队中最合适的开发测试比是多少?

  • 霍泰稳

2010 年 11 月 18 日

话题:Java.NETRuby测试阿里巴巴语言 & 开发架构文化 & 方法

在上周六淘宝网和阿里巴巴 B2B 联合主办、InfoQ 独家社区支持的第二届互联网测试交流大会上,来自 Google、Baidu、网易、腾讯、淘宝、阿里巴巴、FreeWheel 等公司的测试经理分别分享了他们在测试领域的心得体会,原计划 500 人的会场到会了 800 人。在讲师交流环节,大家对“研发团队中最合适的开发测试比是多少”话题做了讨论。(编辑注:方便起见,本文对各测试经理均使用花名,请勿对号入座!)

郭靖是某大型网上商城测试团队的负责人,自 2003 年加入公司后就组建了该网站的测试团队,推动团队进行性能测试、自动化测试、接口测试等。随着团队的壮大,他遇到的比较头疼的问题是一个研发团队中开发测试比究竟多少比较合适?根据他的了解,Google 的开发测试比是 10 比 1,微软的比例是 1 比 3,大家都做得很好。在长时间的纠结之后,他问自己,这个比例真的很重要吗?其实在他看来,大家关注的是开发测试人员的技能、效率、成本和质量等维度,而不是某个具体的比例。同时,他也疑问能否有一种合适的手段来说清楚某个研发团队最合适的开发测试比是多少。

来自另一家知名互联网公司的测试经理,也是负责整个公司测试框架的杨康谈到自己对这个问题的理解:

公司高层通常会给质量部定一些目标,要求你的人员配比是多少。但我的理解是,很难定义和衡量质量部的工作成果。对于高层来说,给质量部最有力的一个施压办法就是人员配比,至于下一步你怎么去做,你自己去想办法。坦白来说,高层是希望能有一个手段,让质量部的人员能尽可能快地完成工作。在开始的时候,我们整个研发团队也有过 1 比 2 或者 1 比 3 的时候,高层就不断地要求我们降低开发测试人员比。但是现在大家已经都不提这个事情了,因为高层认为我们现在做的还可以,对产品的贡献还不错,现在提的更多是如何更好地提高质量。

托雷同样来自一家大型互联网公司,也是测试团队的负责人,就杨康提到的和公司高层相关的问题,他同样深有感触:

在我加入公司后,我的直接老板换过几次。每次新的老板上任,都会问这些问题,我都需要重新给他讲一遍我们是如何做测试的,开发测试比是多少等等。做了一两年之后,他基本就不问了,但是不幸地是老板又换了,第一件事又是来问这个问题。然后自己就将 3 年前类似的话再说一遍。我想大家都了解这种情况,有时主管测试的高层也许是测试领域外的,可能很多是开发出身,不一定真得懂测试。所以我就想能否找到一种比较科学的方法,像性能测试一样,能大体看到它的瓶颈,看到它的容量规划到什么样的程度等。

来自新创互联网公司的测试经理欧阳克从“存在即合理”的哲学角度分享了自己的观点:

开发测试比其实反映的是公司内部开发和测试结构的关系,有的公司开发人员多一些,测试人员少一些,这个比例相应来说是最低的。而有的公司比较依赖于 QA,可能开发测试比就高一些。所以不同的公司,差异肯定会比较大。可能没有一种合适的办法能数清楚这个事情。我的看法就是存在就是合理。

对 Google 研发团队比较有了解的洪七公介绍了 Google 开发测试比 10 比 1 的背景,同样认为开发测试比不是最重要的,最重要的是要根据公司的情况确定合适的比例:

我非常同意郭靖的观点,其实高层经常的问题就是人员配比,因为这个问题大家都理解,而像缺陷比率这些问题,有些人可能根本就不懂。而且人员配比和成本非常相关,老板都关心这个问题。所以说和高层沟通的时候,一定不能纠缠于这个问题,你要告诉他人员比例不是最关键的问题。如果他非要有个标准逼着你这样去做的话,你要给他讲其他公司的人员配比的背景。

比如 Google 的开发测试比是 10 比 1,其实是有前提条件的:第一,测试部门并不是要进入所有的项目:,如果你的项目做得太糟,程序写得太烂,测试人员压根就不会进去;第二,测试人员有绝对的权力控制自己的资源;第三是开发工程师自己要做大量的测试。如果没有这三个条件,你怎么去谈 10 比 1?根本是不可能的事情。所以你一定要告诉老板,开发测试比不是最重要的,我们要根据公司的具体情况确定合适的比例。

究竟某个研发团队的开发测试比多少合适,这和团队的开发、测试工程师的素质也有密不可分的关系,一灯大师从大家对测试的偏见,结合 Google 对开发和测试的理解,解释说要压缩开发测试比,可行的办法是提高测试工程师的素质:

10 比 1 只是一个量的问题,其实背后还有一个质的问题,即人员素质的问题。在很多传统软件公司中,很多测试人员的素质不是非常高,比如大家通常说的观点就是“你做不了开发就去做测试”。像这种情况必须要扭转。在我们公司,现在就特别重视提高测试人员的技能、素质,同时也一直在提高招聘门槛,加强对测试人员的培养,包括调教开发人员配合做单元测试等。所以说 Google 的研发比例是 10 比 1,这里面不能忽视的一点是 Google 的研发人员和测试人员素质都很高,尤其是研发工程师对单元测试和代码质量要求非常高。而咱们其他的一些互联网行业的研发、测试人员可能就没有这么高的素质,这种情况下只能采取人海战术。

读者朋友,您的公司的开发测试比是多少?您对这一话题的看法是什么?欢迎跟帖讨论。浏览更多 InfoQ 中文站的测试内容,请点击测试专题

Java.NETRuby测试阿里巴巴语言 & 开发架构文化 & 方法