1. 测试人员生存的窘境
在移动互联网飞速发展和行业新需求的推动下,软件测试行业在不知不觉中发生着非常大的转变,如果说早期软件测试行业还是一个风口,随着转行人员以及毕业的大学生疯狂地涌入,目前软件测试行业的“缺口”已经基本饱和,最基础的功能测试的岗位需求已经越来越少。
如图一所示,按照国内IT发展进程每隔10年的演进周期来讲,如今我们已身处云时代。
如果将测试行业结合IT发展时期来划分,在2010年以前,绝大多数企业测试实践的重心都是放在系统功能的验收阶段,测试人员的主要工作基本都围绕着基于业务的黑盒测试进行,对编码能力、系统理解能力要求不多。而2010年后,随着移动互联网产品的快速发展,各行各业对软件质量的强需求,以及如今云时代来临之后,大数据、云计算、AI人工智能、机器学习等各类前沿技术纷纷涌入,传统的测试工作模式和工作范围越来越无法满足行业市场的需要和产品的质量要求。
首先,从自身来讲只会功能测试,找工作会越来越难,即使找到了工作,可能依旧是手工测试,工资不高,还非常辛苦!并且如果只会功能测试工作到一定年限后(通常是 35 岁以后),甚至将面临无工作可找的境地,将被行业淘汰。
假如你是老板,一个工作 2、3 年的手工测试和一个工作 10年以上的手工测试,他更愿意要哪个?中年人上有小下有小,既没有学习的冲劲和动力,也不能全身心的投入到工作中。我要是老板也愿意要小鲜肉,除非你的能力远远超过这些小鲜肉。
其次,从企业招聘来讲,现在几乎所有企业招聘测试,都要求具备一定的代码能力、自动化测试的能力、性能测试的能力,如果你不会写代码,不会自动化,不会性能测试,不会搭建CICD持续交付能力、不会容器技术,那你基本就丧失了找到好工作的机会;基本上三线以上的互联网公司都已经把编程和自动化作为必要的技能。
2. 测试岗位的发展转变
IT是一个随着新技术变化而变化的领域,随着企业市场对产品质量保障的要求越来越高,催生了行业中测试岗位的不断发展和岗位职责的细分制。在以前,大多数公司对于测试来说,统一有且仅称之为"测试工程师" (更多是指手工业务测试工程师)。慢慢地,随着自动化测试技术的快速发展以及移动互联网红利带来的业务量突增、互联网产品安全漏洞频发,企业市场对自动化测试、性能测试、安全测试以及产品专项测试越发重视,逐渐在行业越来越多公司内部,开始设立了自动化测试工程师、性能测试工程师、安全测试工程师以及一些专项测试工程师的岗位。再到最近几年,测试开发工程师岗位的火爆,更激发了行业许多传统手工测试人员的能力转型。
如图二中,展示了的行业中主要测试岗位的发展演进,值得注意的是,测试岗位的发展演进,并不代表之前的那些传统测试岗位会立马消失,比如现在很多公司都设立测试开发工程师团队,但同时也还是会存在一些手工测试工程师。
测试岗位的演进,从字面上看,只是岗位名称上面叫法不同,但它的本质背后突出强调了企业市场对测试人员能力的不断提高演进的诉求。
从投入产出回报上来讲,普遍来说,测试开发工程师的薪资都要高于传统的手工测试工程师,而且行业公司中经常会看到一个现象,企业宁愿花高薪再重新招聘大量的测试开发工程师,也不愿意给现有的手工测试人员大幅度涨薪,并不是企业缺钱,也不是企业吝啬,而是企业是讲究等价回报的,只有你的能力价值越高,企业给能你的回报才会越大。
3. 如何理解全栈测试(开发)工程师
最近两年,在互联网行业,越发流行一个叫做“全栈工程师”的词,甚至有一些公司,还单独设立了“全栈工程师”的岗位,尤其是一些开发类的岗位,更为盛行。
在理解什么是全栈测试(开发)工程师之前,先要理解,什么是全栈工程师,有时也被称之为"全站工程师"、“全端工程师”?从字面意思来讲,全栈工程师是指掌握了多种技能,并且能同时胜任前端与后端开发工作,能利用多种技能独立完成产品的人。还有一种更简单粗暴的解解,全栈工程师就是什么都要会的人。但一个人真的能做到什么都会吗?在如今技术快速发展、信息爆炸的时代,什么都会,显然是不可能的。
一般产品研发团队按照不同角色分工大致会分为:产品、前端开发、后端开发、测试、UI、运维。全栈工程师的出现,并不是意味着直接由这一类工种的人,把所有从产品需求->开发设计->测试->运维 工作全部都承包了,全栈工程师如其说它是一个新岗位的出现,更准确来理解,它是在新时代,对工程师能力的新要求。
由于产品研发分工明确,大多数人,只会关注或只会学习各自领域所负责的工作知识,而全栈工程师,或者说具备全栈工程能力的人,我想并不是一定要求要全部都会,而是更强调要具备产品全局观,并且能培养构建自己多维度的产品技术知识面(需求、产品、质量、技术、架构),并且能根据工作所需,保持着快速持续学习能力的人。
在质量保障中,我们经常说,质量是贯穿产品全生命周期的,而这个恰好与全栈工程能力的思想非常吻合,因此在测试行业,存在这样的观点:“一名优秀的测试开发工程师是最能接近全栈工程师能力的人。”
试想一下,如果一个测试人员业务能力不比产品强,编码开发能力不比开发牛,你怎么能发现他们的问题呢? 测试作为一个“高危职业”,它需要比产品经理(或SA需求分析)想得更全面,要比开发更懂需求,要能读懂甚至能修改开发的代码。
有些人会想,行业或企业中能具备这样能力的测试人员应该是少数吧?确实,但拿高薪的也正是这些少数人。能力悬殊的背后,往往代表的也是薪资待遇的悬殊。为什么在互联网行业,普遍认为测试人员的薪资会比开发人员低,这个观点不是绝对,但可以肯定地是,行业中有很多测试大牛的薪资是远高于开发人员。因此薪资的高低,说到底无岗位无关,是由每个人付出的努力,以及为企业团队带来价值多少和个人能力所决定的。
4. 全栈测试开发技能训练营
每年3~5月份,属于换工作高峰期,而每年这个期间都会收到许多读者、行业同仁来信咨询关于跳槽的问题,其中大家咨询最多且最关心的两类问题:
1、为什么求职面试了那么多家公司,都没有收到一家公司的Offer?
2、开15K,结果别人只愿给10K,怎么才能做到有的放矢的求职加薪?
解决问题,需要从根源入手,之所以找工作,会存在这两类问题,本质还是在于职场能力(硬技能)达不到大多数企业需求。
而在职场中,提高自己的职场能力(硬技能),往往有两种主要途径:
1、自学。
2、培训。
对于自学来说,如果本身基础能力不牢,或者学习方法、方向不对,没有系统性的知识补齐,单想通过“闭门自学”,最终效果往往都是不理想。(通常那些自学、自律能力好的,现在基本已经是行业大牛了)
对于想通过报名培训机构来提升技能的同学而言,往往又碍于培训机构学习费用高昂,目前市面上,普遍的测试技能培训费用少则七八千,多则需要一两万。并且大多这些培训课程方向,只是针对单一技能,比如仅针对Python编程提升的、仅针对自动化测试相关的、或者仅针对性能测试、Web平台开发的。
而在团队、企业能拿高薪的测试专家,往往对各方面的技能要求都会较为均衡,这也意味着,如果想拿到更好的薪资,对你的综合技能也是越高。
试想一下,如果花了上万块,仅只是提高了某一块技能,而实际测试工作中的复杂性和多样性,还是很难高效的满足长期就业需求,无法拿到理想的薪资回报。
为了帮助有需要的行业人员,解决行业普遍功能型测试人员生存的老、大、难问题,笔者花了近3个月时间,结合最新行业企业用人技能需求和调研大批行业人员技能提升诉求,打造了一套最新、实用,以实际工作技术为驱动的「全栈测试开发工程师技能体系」训练课程。
本套训练体系,共包括20大技能版块、共分206个课程。全面提升测试人员的软、硬技能,让测试人员可以在未来具有足够亮眼的核心竞争力,力争帮助测试人员月薪涨幅5000-10000 元的提升目标。
长期目标是培养1000名行业学生,每年一期,每期仅招收100员学生,每期教学周期持续4个半月,每年课程内容会随着行业技术趋势发展持续升级,每期学员皆可免费学习后续所有课程内容,并且学员在职业生涯中皆可享受导师终身成长辅导。
提升技能只是手段,最终目标是帮助学员构建多维的工作技能体系,并能真正将这些学习到的技能,来涨幅提高自己的薪资待遇。
如果具备或者掌握了这些技能的人,目前在企业薪资起码都是25K以上。虽然大家不需要一上来就把目标定的太高,但可以断言的是,只要你肯用心在老师的指导和带领下,持续学习完和掌握这套培训课程。至少能满足下述两个薪资条件:
- 月薪20K+起步。
- 月薪涨幅50%+。(假如目前薪资20K以下的)
有些读者看到这里,会想,你怎么也搞起培训了?需要给大家说明的是,我们这个有别于培训机构,大多数培训机构更多是以盈利性质为主,考虑更多的是能不能给机构带来更多利益流量,并不太关注学员学习完这些课程之后,到底真正能不能帮助到他们,能不能给他们带来待遇回报上的提升。并且一般培训机构费用高昂,学员众多,遇到问题,很难得到长期细心指导。而我们这个,定位的初衷很明确,就是全力帮助学员成长,培养更多行业优质人才出来,并以提升学员薪资为目的。不以提升自己薪资和回报的学习、工作都是耍流氓。
在军队,有着这样一支神秘且综合实战作战技能特别厉害的部队,称之为“特种兵”,而我也希望带出来的这些学生,也能像这些特种兵一样,都是能为企业、团队独挡一面的人物:招之能来、来之能战、战则必胜!
因此,我更愿意把他看成是“组建一个百人特种兵训练营,学员与我的关系亦师亦友,去帮助一群愿意成长,懂得提升投资自己,助力每位学员获得理想薪酬回报”。
说起费用这块,我们整期的学习内容,共包括20大技能版块、分206个课程、100个课时,光上课授课时间就超9000分钟、学习周期持续4个半月,按照目前行情,以这套课程的知识宽度和覆盖深度来讲,如果在其它培训机构,至少也是一万五以上起步价。而我们低于市面的四分之一价格,仅需3599元,这也意味着平均每节课(每节课约2小时)也就三十元左右。坦白来讲,这样的定价,抛去讲师时间成本、课程成本、授课软、硬件成本,基本上是不盈利的。
每期开课时间会统一安排在每年的下半年进行,一般持续到次年的2~3月份左右,这也意味着,每期学完的学生,只要有意向换工作,都可以直接立马去意向企业求职验证学习成果,俗话说:“是驴子是马,拉出来遛遛”。并且导师也会针对每位需要换工作的学生,在面试前,进行针对性面试辅导。
从投资的角度来说,比如,当前你的月薪是15K,学习完这套课程,去外面企业拿个20K起步,是完全没有任何压力的,一个月的薪资涨幅就能立马把课程费用赚回来了,如果你稍佳懂得理财和投资之道,就能明白这是一件多么超值划算,性价比高的投资。
PS: 当然,如果你已经很满足当前自己的职场处境和薪资待遇,或者认为这就是一篇忽悠人的广告、又或者你对这些技能提升并不感兴趣,大可不必继续往下看了。(用人不疑,疑人不用)
我的自动化测试之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,所以,我和朋友特意花了一段时间整理编写了下面的 《自动化测试工程师学习路线》 ,也整理了不少 【网盘资源】,需要的朋友可以 文末自行获取网盘链接。希望会给你带来帮助和方向。
1. 自动化测试必备Python编程内容
2. Web UI 自动化测试基础内容
3. Web UI 自动化测试实战内容
4. APP UI 自动化测试基础内容
5. APP UI 自动化测试实战内容
6. API 接口自动化测试基础内容
7. API 接口自动化测试实战内容
8. CI/CD持续集成专项技术
9. 自动化测试框架实战技术
上面就是我整理出来的一份自动化测试工程师技术路径图。希望大家能在这个成长过程中收益良多。全方位提升测试技术,建立一套属于自己的技术体系。帮助大家不断学习和优化技术栈,跟进先进和主流的测试技术,给到大家带来的不仅仅是技术和薪资的提升,更多的是 改变测试人在IT技术领域的地位和心态,拔高测试行业的技术深度。
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。