@程序猿杨玥:“做开发和 QA 是不是真的相差很多?我知道做开发比做测试要辛苦,尤其对于女生来讲。如果真心喜欢编程的程序猿,是不是真的会感到做测试很无聊?”
最近@程序员的那些事 同学又转帖子(见上)给我,问测试工程师的价值问题。最近一段时间随着工作内容(第二个女儿出生)的变化,对测试的关注渐少,但还是抽空写篇文章,对过去的类似问题一并做回复。这是最后一次回复类似于“测试人员有无价值”“自动化测试人员是否更牛逼”“测试是不是更闲一点”这类问题。
首先,测试人员有无价值?
价值分两部分,一个是你的活有用没用,这个不再论述。我前两年写过一系列的文章说测试人员的工作为什么重要。 还有一部分人说的价值,其实就是值多少工资。这是一个有趣的话题,如果我们把测试人员的时间看成是一个“劳动力商品”,企业主看成消费者,那工资其实是由消费行为决定的。消费行为很有意思,她(抱歉用女性她,因为我觉得女消费者更典型尤其是我老婆)看上去是理性的,实际上是非常感性的——我们觉得一个东西值不值那个价钱,大部分不是由于它有用没用,而是由几部分组成:竞争性,稀缺性和消费者心理。
竞争性好理解,前几天我还拿百度涨工资的新闻开玩笑说“经理KPI加几分,不如360挖人来一铲”。至于企业为何会产生人才需求竞争,这在后头的消费心理中会说到:有时候是自己真需要,有时候是看邻居们需要觉得自己也应该需要。?
从稀缺性看,会写代码的测试人员,可能对项目的贡献还不如那些传统手工测试者,但是工资却高不少——因为现在这类人很难招到。所以如果你在项目里贡献比他大,挣得比他少,真的不要抱怨太多,从价值上说,你家里那袋子米比你男朋友送的玫瑰花高多的多,但是一斤玫瑰花比一斤大米可贵多了。
而消费心理就更是难以捉摸了,经济学家早就发现,有些东西涨价了反而需求增加,价格下跌需求反而减少(经济学中的虚荣效应);有些东西超出了消费者实际需要甚至超出消费能力,但是他们仍然会追逐购买,因为邻居也买了(经济学中的从众效应)。 而邻居可能恰好是真需要这东西,追逐邻居买的可就不一定了。
放到测试职业中,能看到许多企业高薪聘请了自动化测试技术人员,但是并没有为项目做太多贡献,一些企业摁着热门职位和那几个大牛挖来挖去,工资炒高了好几倍,其实都是典型的从众心理和虚荣效应,真的不一定是他们的产品有实际需要。?
归根结底,很多人把自己的价值等同于工资,这是烦恼的根源,我们不妨借用马克思经济学中的论述,资本家付给工人工资不是让他们发财的,而是为了应付合适的生活,便于他们恢复劳动力。?
第二,开发和测试哪个工资高?
如果是说起薪,在同等职位下,大部分企业,开发要高那么一点,但不会很多。话说回来,考虑到北京上海坑爹的房价,你真的觉得一个月300,500那点差距,对你生活有那么大影响?至于这点价格差距为什么来,请用第一部分的理论分析。 开发测试人员工资差距是有一定历史原因的,早期的专职测试人员可能是从文职转行过来的,加之由于从计算机发明起,靠谱的开发者就想夏天街上匀称的姑娘那么稀缺,所以工资就会高那么一点点。 但是,测试人员的工资有个很有趣的现象:测试人员的晋升路径比开发多,这是因为测试人员的沟通能力,情商普遍高于码农,加上他们的工作需要和不同部门打交道,某几次表现好就会被注意到,从而被各个部门挖角。但是开发人员在集中表现的时候,他们是不和周围人说话的,你也不要试图打断他和他说话——真的可能挨打。所以,许多码农干了十几年,还是码农。而升职以后的工资,你懂的。 我在某家外资500强装逼的时候,几乎是挂Manager头衔中最年轻的,开发的Manager普遍都比我大5到10岁:好的开发者要么不屑当老板,要么花了5年的时间才让他的老板明白原来丫也愿意升职。
第三,测试是不是比开发闲一点?
好吧,如果这能骗一些人才加入测试队伍,我会违心的说是。但实际情况是,测试大部分时候都很忙。测试唯一闲的时候就是盯梢开发改Bug时,除此之外,Bug修改完要做确认测试和回归测试,需求变更了你要改测试设计和用例,很多产品测试环境的部署工作量非常之大,加之99%的测试都是在人员不足,时间不够的情况下做的,所以他们真的很忙。不过,从好的方面说,至少工作是安全的。
当然,大部分忙闲的差异都和公司,项目,以及项目负责人有关。?
第四,自动化测试好不好?
答案是,好的自动化测试当然好。但是坏的自动化那可能还不如手工。
至于那位女工程师问测试工作会不会无聊?我得说,会!你结了婚天天看你老公那张脸会不会烦?一定会,这叫审美疲劳,进而诱发出轨冲动(如果进展到了这一步,联系我)。资本家雇你的目的是用最低成本解决问题,对他来说,让员工做熟悉重复性的东西当然成本最低。这对于挖土的,写代码的,搞测试的,都是一样的,资本家雇你不是for fun,他是为了利润。写代码的人就比做测试的开心一些,无聊少一些?明确的回答,不会。