做了10+年的测试,嵌入式系统、服务器、B/S、APP跟软件或者互联网有关系的都做过,国企、私企、外企都呆过,粗鄙地谈谈如何做测试吧。
昨天
(软件)测试一直都是一个低门槛岗位要求的工作,一般来说只要逻辑比较清晰,文字描述和语言表达还算有条理,学习一点计算机知识就可以入门,如果再有一定的业务基础就能给测试工作的入门带来很大的便利。例如:财务人员,在学习一点计算机知识以后,完全就能很好的转行为财务软件的功能测试;某互联网公司的前台,只要她(他)对本公司的产品比较熟悉,使用比较多,有一定的理解,转行做初级的功能测试也是完全没问题的;以前在外企的时候,还有很多伙伴是英语专业,或者以前是做教师的,有英语优势,在外企里做测试也是能获得一席之地,我们自己开玩笑说他们就是测试里面英语最好的,会英语的人里边测试最好的……
因为门槛低,测试岗位往往也是公司里地位比较低的,也是属于最容易被替代,最容易背锅的岗位,业内半开玩笑的说,如果一个公司要裁员,那么测试组肯定能排进前三。
虽说如此,但是为什么还有那么多人愿意来做测试呢?还不是因为钱!毕竟软件公司或者互联网公司薪资待遇相比下来比普通传统行业还是要高一些,再加上门槛低,早些年要是在一个外包公司里做测试的话,确实能拿比较高的薪资。
曾经我的老师做过一个问卷调查,问“有谁是出于对软件测试这个工作的热爱干软件测试的?”统计样本大概有一千多例,只有2%的被调查者说是“喜欢软件测试”,2%说是感兴趣,但说“热爱”的是0。
今天
随着时代的发展,社会的进步,软件公司互联网公司早已遍地开花,对测试岗位的需求也越来越多,对测试岗位的重视程度也越来越高,当然把测试当开发一样重视的也就那么几个大厂,小公司里的测试只能说较前些年地位有所提升和被重视,但是仍然也没有和开发岗位拉到同一水平线上。
1、沟通——做得好的测试,一般具备比较优秀的沟通能力,X测试需要和不同角色打交道,基本上是产品和开发的缓冲区,需要在头脑保持清醒的前提下“见人说人话”。跟开发能用开发听得懂的语言沟通,跟产品要用产品听得懂的语句交流,甚至还要和业务方打交道。so,沟通能力和技巧很重要。
2、测试思维——这应该是做一个好的测试最需要具备的能力,思维能力从来都是决定能否把一个岗位做优秀的能力。而对测试来说,测试思维其实是一项综合思维能力,涉及到产品思维、用户思维、编程思维、财务思维。这其实是个比较抽象的概念,测试思维比较好的体现就在于测试用例的设计上。测试用例可以说是测试岗位吃饭的家伙,测试和测试之间水平高低最大的体现就是测试用例设计。同样的一个产品,有的测试通过测试用例就是能发现别人发现不了的问题;有的测试开发可能写代码相当厉害了,但是在测试用例的设计上毫无逻辑,甚至测某些功能的时候总是觉得在走弯路,这其实都是测试思维的问题。想要做好测试,训练测试思维是非常重要的一个环节。
3、编程能力——想要测试的职业生涯更长远地走下去,编程一直是作为测试绕不过的一个坎,很多没有计算机背景的测试,都是因为不会编程而做的测试,当然,那个时候会编程的话就不会做测试了。但是随着自己从业年限的增加,自己年龄的增大,对薪资要求得更多,编程是一个测试持续发展不被替代的重要保障,更是向下一个阶段进化的重要环节。私以为,手工测试大概就3-5年的职业寿命,要说手工测试是吃青春饭也不为过。再怎么兢兢业业,认认真真地做手工测试,5年以内被替代是很正常的事情。我面试的时候就遇到很多做了5、6年手工测试的应聘者,他们有丰富的从业经验,有较高的薪资要求,但是之前的从业时间里只是在做手工测试,其实这类人已经到了天花板了,如果再不抓紧编程的学习,职业生涯可能就要另谋出路了。
明天
AI的迅速发展,让我隐隐有了测试行业被取代的担忧。可能AI替代测试还太远,但是眼前大数据、物联网、区块链等等一系列的新生事物对测试的要求也越来越高。
一方面,不论世界怎么变,最底层最核心的东西不会变,根据前面说的,一个测试具备了“今天”的三点测试重要能力,就能做到不忘初心,以不变应万变。
另一方面,不管自己所在的是什么行业,想要测试做得好,就必须保持持续学习的状态,和对测试行业发展趋势的高度关注。我的建议是,多去看看其他公司对测试岗位的要求,甚至即便自己没有跳槽的打算也可以去投简历面试一下,多看看多聊聊测试在其他公司做的事情,要求具备哪些新的技能,这能给自己规划自己的进化路线有很好的帮助。
end.
ps:明天说说这两天圈里讨论的一个话题:
假定产品功能正确,否则就会出现“一错到底”的尴尬局面。——前提是产品功能正确,测试的目的是找到产品中的bug,没觉得这有矛盾吗?
网友评论