关于 google,facebook 对自动化和外包的态度
原贴我已经看不到了, 但是微博上这篇文章我仔细看了一下。 从我个人感觉来说,作者有些是对的,但大部分是错的。 我来一个一个的分析一下吧。 先看下面的截图
首先作者声明了自己是 google,网易,新浪的资深架构师。 并且从截图来看,作者说即便是国外的大公司诸如 google 和 Facebook 在测试方面也没什么建树,主要靠外包测试。 这一点我先小小的怀疑一下。 因为小弟不才对 google 还是有些了解的,当初也有幸外包到 google 做事。
- 这世上我估计没有几家公司比 google 更重视自动化了。我当初被 google 那庞大的自动化给震慑的不轻。 而且 web driver 作者 simon stewart 就在 google 任职测试开发工程师我想您应该不会不知道吧。对了,那时候他在的团队是叫工程生产力团队。 另外对内有诸如 quality bot, bite 等项目的投入,对外有开源的有唯一的 C++ 测试框架 google test, 能与 assertJ 一较长短的 truth。还有非常优秀的 Grafika,mobly 以及一些我并不熟悉的开源项目。 这些都是 google 的测试开发工程师的杰作。 您说 google 不强调自动化,不重视自动化。 我估计就是在 google 扫地的菲佣都不会同意的 (调皮的 google 工程师们总会放出几个扫地机器人)。 同样我司正好有一位曾经在 facebook 工作过的年薪 150W 的大神, 我刚才去找她聊了一下, 她告诉我的答案是,没有自动化的话 Facebook 都不知道该怎么活下去。 Facebook 一度全公司只有 8 个 QA。 所以我甚至个人比较怀疑您的履历是否是真实的,因为但凡在国外像样点的公司做测试的人都不会有这种看法,国内的这种测试无用论,自动化无用论从来没在国外的圈子里出现过,我不太相信以 google 强大的工程文化渲染力下还会让员工有这样的误解。 当然了您的职位是开发架构师,可能并不太懂测试方面的事。 其实我们用脚趾头想一下。google 曾经公布过他们每天要部署的服务数以万计,没有强大的自动化机制,他们部署个屁了还。
- 关于外包的事情我也说一下,毕竟我也在外包混了几年。 外派过 google,微软,ariba。他们确实用了不算少的外包人员。 这一点作者没说错。 不过整个测试项目的外包就太不切实际了。 我上面说过的 google 的在测试方面的投入全部是土生土长的 google 测试开发搞出来的。跟外包半毛钱关系没有。 也不是我自黑,但就外包人员那点水平真是 hold 不住人家的项目的,我们都只是做人家的边角料而已。
关于测试自动化的发展
还是贴一下作者文章的截图吧
- 咳咳,那个啥。selenium,monkey 巴拉巴拉的这些确实是自动化必须要学的。一如你说的,对于做的好的人来说确实感觉没什么,并不难学。 很多人也确实做不好,不堪一击。 但是您能别光看着做的不好的那一批么 。 有的团队水平不行,有的业务就不适合做自动化。 但他们代表不了软件的全部~~ 移动互联网代表不了所有互联网,互联网代表不了整个软件行业 做为一个不在互联网的传统 B2B 软件公司的员工。 我表示离了 UI 自动化我特么会哭的。我 20 个浏览器并发都要跑大半个小时的 case 量,你让我全手动来,我撞墙的心都有。我们的产品就是特别适合 UI 自动化,以我们的水平就是能保证 UI 自动化脚本特别稳定,我不用岂不是傻逼么
- 再一个,测试行业在发展。 从一开始的测试工程师到自动化测试工程师再到现在比较火的测试开发工程师。 我们早就不局限于 UI,接口这点东西了 , 测试环境的管理已经不是当初的虚拟机 +shell 了。 已经变成了现在的 k8s+docker。不用自动化难道我人肉部一个辣么复杂的环境么?时代已经变了,我承认老的方式是会被淘汰的,所以我们才也要跟着变。容器技术的崛起让我们管理测试环境的能力得到了升华, 大数据的强势让我们有机会迎接数据测试的挑战。 新兴的 devops,以及开发人员应该注重质量的声音越来越大确实给测试人员造成了冲击,所以测试人员开始开发测试工具,框架,平台以辅助开发人员进行自测。测试人员的角色是在慢慢的转变,而不是您说的测试无用论,测试已死论这些。而且不仅是测试,开发,运维,这些角色都在慢慢转变。打从 devops 这个概念出现开始,这三个角色的边界就已经越来越模糊了,这是趋势。 请不要狭隘的把测试定义在一个框框里,代码牛逼的人不能叫测试?那像 simon stewart 这样的大神听了以后会哭的,他的 title 竟然是个谎言。我记得 4,5 年前有过运维已死论, 那时的运维工资甚至比不上测试工程师。 但是随着 devops 和容器技术的崛起,您知道现在运维开发这个职位的薪资到了什么 level 了么? 至于您说的什么测试平台都已经变成了绩效工具。这个是不分职位的,只要是 KPI 至上的公司都会有这些晋升项目, 不论开发,测试还是运维。 您不能一竿子打死那些还在勤勤恳恳做事的人。
关于对测试人的建议
我只想说这段话实在太不像样了。 我头一次见到劝人不要学习的情况。 在帝都靠自己努力学习拿到 30K 左右工资的测试人员并不算少见,极端点的我一个同学已经到了 40K。这样的薪资水平甚至超越了一般的开发人员。就算什么都不看,就看钱,我也不会说出什么不要学习之类的话。如果大家按您说的做好自己的手动功能测试,不要管别的,以后出去找工作都困难。 也不要说什么你牛逼就去做开发这样的话,您说的那种以后会由开发人员开发一款巨牛逼的测试软件让所有的测试都变成简单的录制其实是很扯淡的,至少在未来 5 年内我都看不到什么希望。先不说目前的情况下连 google 都承认他们自己搞的录制回放还不成熟,我实在想象不到数据测试,运维测试,机器学习产品的测试,硬件测试,系统测试等等这些东西要怎么录制回放。就说我让你测试 k8s 吧,连 UI 都没有你怎么录? 也许未来真的有一天会实现这个愿望。毕竟技术是是发展的,工具代替人工是趋势,也许以后人工智能真的实现了呢。但那是未来很久以后的事,现在就破罐子破摔不是智者所为。这就好比人知道早晚有一天会死,难道今天你就不活了?而且就算人只能实现了,我们就失业了?当初第一次工业革命很多人以为社会上大部分人都要失业了,结果呢?
最后对作者说的
您在一开始就发表的这番言论实在是让我哭笑不得。 拿最近一个事说吧,小猪罗志祥在一个选秀节目中做评委,当选手说我来这里是要为这个舞台做什么什么的时候,小猪直接怼了回去。截个小猪的图
我认识的大神都很谦逊,在我司可能一个不起眼的人都是在 ACM 世界大赛上拿过名次的,据我所知光冠军就有 3 个。年薪几十上百万的牛人比比皆是。可我从来没见他们如此狂妄过。 以前的我也很狂妄,现在的我越来越觉得自己无知。 我并不同意您对测试技术的观点,测试再发展,早已不仅仅是您了解到的 UI 和接口了。7 月份我再社区举办的测试大会上有一个 topic,会讲到大数据和容器技术在测试项目中的使用。 同时听说您的老东家 google 也来分享移动测试,还有多家公司来分享自己的测试技术。欢迎您来看一下还在一线奋斗的测试人现在都在玩什么。我也会问问 google 的同学,现在他们是不是已经不太强调自动化了。 当然也欢迎您实名来怼我, 看您的履历,并不是默默无闻之辈。 大可以自带光环来跟我们争论一番。毕竟要是吴恩达跑来跟我说我是个菜比,我估计我连还嘴的勇气都没有。
↙↙↙阅读原文可查看相关链接,并与作者交流