误区一:测试都是女生,男生不适合
误区二:这个职位很简单,不需要很多技术含量,每天很闲
误区三:起步即巅峰,薪资提升空间不大,一线才八九千
如果你听到这样的言论,赶紧走!头都不要回,犹豫就会败北,果断就会白给!说这话的肯定是能力一般的混子!
1、你理解的软件测试行业、并不是行业真实的情况
首先要说的是,80%的测试工程师都称不上是测试工程师。
比如说前几年经常听到的几个说法:
做测试吧,不用写代码,入门比较简单;
做测试吧,手工测试很简单,每天点点点就行;
就像真实的房地产市场和置业顾问口中大相径庭
软件测试工程师和质量人员必须同时具备一定的开发和运维能力。
测试人员会更深入介入开发工作,推动代码评审、代码审计、单元测试、自动化冒烟测试、测试精准化分析以及研发自测等来保证研发阶段的质量;
另外,测试人员会也会参与配置部署,将自动化测试用例配置到持续交付链中,总之,作为 DevOps 关键角色,测试人员将推动开发和运维共同实现高效交付高质量产品的目标。
行业大量技术根基薄弱的测试工程师面临淘汰和外包
这句话听起来比较残酷,但是你必须要看到这种变化。现在很多的测试工程师都不及格,要么是会点点点,要么只会一点自动化。
比如阿里,就是招测试开发和研发做测试。如果只是点点点,那么很快将失去在大的公司的工作机会,直接会被外包公司吸收过去。
大公司倾向于招测试开发,小公司招聘要求也随之提高
很多刚入行的同学都在抱怨为什么招普通的测试,还要会自动化,会语言基础?
行业发展对测试是有更高的期待的,已有的测试又不能解决,所以只能在招聘中体现这一点。
2、软件测试发展的行业前景怎么样?
表面"衰落"的测试行业
鉴于大形势变化, 不懂技术的测试工程师会逐渐被淘汰出局. 一波测试工程师的失业潮是在所难免的.
当研发的生产力在逐渐的提升, 运维的部署在逐渐的自动化, QA所带来的价值和耗费的成本就越来越不能忽视了. 甚至成为了一个项目的最大的成本.
facebook早年都没有QA就成长为大公司,阿里就迅速推动了流程的裁剪,进入产品, 研发, 测试三足鼎立的最简模式.
测试行业的管理会逐渐扁平化
几乎大部分的互联网公司都在分拆业务和QA团队从而提高执行力. 不懂研发体系几乎没有发展空间了. 会有阵痛, 但是结果肯定会是好的
测试技术人才需求增多
大公司因为分拆的问题. 不再有统一的测试技术支撑部门, 所以分拆之后的每个团队都需要组建对应的职能团队, 对测试技术人员的需求反而会增多.
这几年通过各种招聘网站的招聘job的描述也能看得出来.
不懂开发的测试工程师已经是新时代的文盲
第一个是工作上已经没有太大的晋升空间. 第二个是也很难跳槽. 最好的结果是凭借多年的经验转管理.
我跟行业的很多测试经理交流过, 大部分工作超过6年的人, 在测试执行上会倦怠, 在测试技术的改进上已经无法入门, 还不如招实习生.
相对来说, 有技术基础的人在工作8年以上仍然会保持自己的学习热情.
测试行业的门槛增加
以前处于发展期, 行业对人才的苛求是第一位的. 现在随着大公司发展稳定, 所以希望大家技能和学历上能够好好的重视这个问题.
测试行业的薪资在提高
技术含量的提升, 责任的提升必然会带来整体的回报. 现在只要技术好, 学历没问题. 工作3年拿个两三万的月薪是很平常的.
研发工程师进入测试领域
在优秀的测试工程师和架构师难找的情况下, 已经有越来越多的公司选择直接用研发工程师来顶了.
单测->接口测试->基础的冒烟测试, 能够做到自动化就可以了. 如果能像运维那样做成测试即服务就更完美了.
3、做软件测试未来的出路是什么样的?
几个问题你一定一定要进行思考:
你是否能够接受互联网行业的工作节奏?
你是否真的热爱这个行业,起码有足够的热情愿意去钻研?
你的学习能力是否能够让你在日新月异的技术浪潮中不掉队?
如果这些你都没问题,那么你可以放开手去进入这个行业了,对于做测试未来的出路,也有很多条路:
技术专家
这条路较为坎坷,但是也最为抗打。平时多撸代码、多和开发沟通,写一些测试平台或者测试工具。同时开发能力也要不错,这样才能成为一个高阶的测试开发工程师。
管理方向
做技术累,做管理更累,因为和人打交道是最复杂的。技术不行很难服众,锻炼自己落地一些团队方案的能力。
转行其他
研发、产品、运维,或者创业,都是面临瓶颈之后的新的出路。其中尤其是创业,不要草率,见过太多创业失败又回来上班的,啥都折腾没了。
4、软件测试工程师的核心竞争力有哪些?
薪酬数据参考
按照8年跨度. 总结了行业的一些典型人才的现状. 如果现在的你还是处于比较初级的技能阶段,建议你可以从以下几个方面逐步的提升自己:
如果现在的你还是处于比较初级的技能阶段,建议你可以从以下几个方面逐步的提升自己:
硬实力:
1、坚持少做重复性工作,提升自己的工作的幸福感和成就感,促使自己不断的学习钻研;
2、掌握一门编程语言,Python或者Java都行,会了Python之后会灵活一些,能够写一些脚本或者小型的应用,将来在面对测试和运维之间的区域时,去部署和维护一些web应用和测试服务器,Python就会变得非常有用。
如果是掌握Java,在面对Java写的测试框架的时候,能够很好的处理好测试与开发交叉的领域。在面试过程中,大概率也会碰到问你jvm的问题;
3、计算机的理论知识,这个简单一些,比如各层的协议、抓包工具等;
4、操作系统上,Linux基本的操作和命令、shell脚本、ios和Android系统;
5、前端基础知识,目的是解决测试和开发的交叉领域,bootstrap、css、html、javascript、jquery。
6、数据库,性能测试很重要,接口测试也要用到。
软实力:
1、不达目的誓不罢休,研究问题搞不明白就不放弃,这是你的职业精神
2、耐得住寂寞,只要方向是对的,量变终究会引起质变。
3、学会沟通,学会与开发沟通,学会与产品沟通,学会与团队沟通,还有就是学会与你自己沟通。
4、不断学习,不要吃老本。
最后,我想说:
成年人的世界没有容易二字,你的“前景”,你来创造!