作为一个资深测试开发工程师,同时以三年面试官的经验,感觉现在测试岗位供求关系严重失衡;同时也为一些测试工程师,测试开发工程师而着急,所以写了这篇文章,希望能给相关人员一些帮助。
我是计算机专业硕士研究生,从实习到毕业一直从事测试开发工作,比较喜欢这个岗位,同时对这个岗位的发展,相关的新技术保持着高度的关注。以我每次换工作都能涨薪40%以上的工作经历,来阐述一下测试岗在市场需求的现状。
一、功能测试关注点比较窄
不管我们测试的是web, app还是m端,或是如微软C/S架构的软件,还是如银行,国企等专项的产品,功能测试是基础。工作上一年半载的,就能了解相关的测试流程,如需求分析,测试用例编写,用例评审,提测试验收,功能测试,Bug回归以及上线和线上回归。
但是很多人员比较关注自己的需求,而不是整体项目或是这个需求在整体项目中的作用,在大型项目或是与多部门合作的时候就手足无措。在一个新项目的测试的时候,如app,仅仅考虑到app本身,而对接口的传递,服务的测试,以及后端数据的校验不去关注。
在测试工具的使用上,局限于公司提供的工具,仅仅会使用就满足了,而不去了解为什么要这么用?还有没有其他相关的工具?再者就是沉迷于自己公司的产品,如微软的产品测试方法与流程可能和其他互联网公司不一样,也不去了解大部分企业是怎么测试的,深信自己公司的测试方案比较牛。
除非你想一直在公司干下去,否则你就要了解一下行业现状,现在没有公司愿意花大量的时间来培训员工,招你来就是让干活的。你以往的工作经历再厉害,企业如果用不上也不会要你的。离开现在的平台,你还有什么,这个才是最重要的。
二、自动化测试没有方向
在最近一年多的时间,大多数做测试相关的同学都意识到了如果没有代码经验,测试工作也达到了瓶颈。所以都会去学习相关的自动化测试,但是往往不得法。一者通过自学,由于不了解行业发展现状,学习一些过时的技术或是方法,以至实际工作中就变得无所事从。如学习QTP, Loadrunner等自动化测试软件,发现社会上使用不多;学习通过Excel来组织测试数据,用python或是java来编写自动化测试用例,执行起来效率非常低;编写自动化测试用例的时候,没有整体考虑,后期执行用例时一个个执行,没有执行结果汇总,没有错误记录等问题层出不穷。
由于自己公司业务的限制,缺乏尝试和创新,要么只了解公司现有的框架,要么就是在公司现在的框架上写用例而不去了解整体框架的工作原理。当面试的时候问到自己的自动化测试用例的优缺点,是否了解过业界其他相关的框架或是开发模式的时候,两眼一抹黑。这些情况在现在的面试过程中很常见,而如果你是这种水平的话,不能说明你会自动化测试,当然也很难面试通过。
三、企业空缺大,求职者达标少
目前企业对测试人员也要求越来越高,仅仅响应需求的功能测试人员基本饱和或是留给了校招生。通过社招渠道找工作的人,都要求有一定的自动化或是代码经验,能解决工作过程中遇到的问题;或是编码能力较强,能参与公司相关测试项目的开发工作。薪资待遇基本上是15—25K,然后是一大堆岗位要求,要求会上一串很唬人的语言或是技术。
应该有不少人员在面试过程中会被要求写不少编程题,如单链表逆序,二叉树遍历,日志过滤等。这一方面是看你的编码能力如何,另一方面也能从编码习惯来看你有没有参加过大型的项目开发。
再者还有给你一个具体的问题,让你来给出解决方案,如:现在有一个全新的App,如果让你负责测试,你可能会实施哪些测试方案?而不像以前那样做个逻辑题,或是写个测试用例什么的了,这个变化相信大家一定深有感触。
在这几年的面试过程中,公司一直在招聘T3,T4级别的测试人员,通过简历筛选进入面试的人,差不多三四十个才能有一两个达到要求。更多的人员是在公司完成部分代码工作,模仿和重复的成份居多,同时不关注当前业界测试技术的发展。
四、资深测试开发,测试架构师独孤求败
测试行业不断发展,公司的测试部门也需要一些大牛来进行相关的工作。一是由于行业原因,代码能力强,有架构经验的人员一般都在开发部门;二是要求高,资源测试开发工程师不仅要精通测试相关的技能,还要会前端设计,服务器配置等等,几乎是全栈工程师;而做程序的人员一般精通一点或是几点的较多,从前到后全都能上的越来越少。
但是企业想快速发展自己的业务的时候,必须有一个强大的测试团队来保证质量,通过一系列的CI,CD以及其他的手段来促进项目的实施与投放。这就要求相关工程师要从多方面来考虑问题,不仅要考虑项目的实施成本,还要考虑参考与的测试,开发,产品甚至用户等人员,同时要与公司发展的前景及方向相切合,并能很好地为之服务。同时这类人才公司都比较看中,每年的找工作季节也就那么几个人会进入人才市场流通,而且很快就能找到工作,企业的通常定位都在30K以上。这也是我们每个测试人员的努力方向,只有你具备了相应的实力,才有资格向企业要求你期望的薪资。
上面通过我的个人经验对测试岗位的供求现状,可能存在的片面与不足之处,但是也能说明点儿问题。文章从表象来介绍了一下相关不同测试人员的现状,而从与面试人员的聊天过程中,发现大多数人是想好好学习,想进步可是不知道学习的方向,以及如何学习?
我的建议是有一点基础的但对自学没有信心的或者没基础但对软件测试非常感兴趣的小伙伴,你们可以选择系统的培训,一定要求学习技术内容和市面项目需求吻合度高,并且注重实战经验的培训,这样才能有实质性的进阶!