忙忙碌碌又一年,2021的计划完成了么?目标达成了么?买房、买车、脱单、加薪等等,都是很现实的事儿,2021了,80后步入40,90后步入30,曾经的追风少年,如今的油腻大叔,突然感觉时间好残酷,职场也一样,竞争、裁员,不知道下一刻的命运,只有强者才能主宰自己的命运,无畏未来,正因为如此,大城市才兴起了很多付费的自习室,静心提升。
作为一名测试人员,如何成为强者呢?
如果想要在测试领域好好发展,提升自己的测试技术是必不可少的,但是,选对方向更为重要,功能测试、自动化测试、测试开发、性能测试、安全测试、测试管理,每个测试方向都不简单,
但是,大环境就是,你不会点代码、熟悉两个框架原理啥的,都是算low的,
最近半年多,不管是私聊还是群聊,我发现大家最向往的两个提升方向是测试开发和性能测试,
当然,能都会,那最好,但是人的精力是有限的,选一个突破比较实际,下面就来简单谈谈我的看法。
这里说的测试开发,是真的能开发测试产品、测试工具的测试开发。
为什么热衷测试开发?
开发的成就感,大部分测试人员的编码能力是个短板(特别是前几年红利期,测试需求大,要求低,很多非计算机专业的转行做测试),要不然,大部分都做开发了吧?不管如何,能开发出东西来,对测试人员来说,也是非常让人有成就感的事情;
工作压力小,开发测试工具或者测试产品,一般不会很紧急,因为都是内部使用,所以,相对公司里面临产品上线、项目交付压力的专职开发来说,压力小了很多,所以秃顶的测试开发很少。
测试开发的难点及前景:
测试开发要求前端、后端都要会(一般的公司,不会给测试开发还配专职前端),可能还要自己设计产品,那就是全栈开发了,如果产品设计不佳,可能最终无法落地投产,也可能迭代困难,最终要完全重构;
对自己的开发能力提升有限,因为测试开发开发出来的工具或者产品,都是本公司内部使用,用户量有限,基本上不会考虑高并发、高可用、安全性等,估计也不会有这些性能及安全需求,不像专职开发,用到各种前沿的技术、框架,必须考虑性能、安全等等。
这里说的性能测试不是只会用工具瞎跑而不会监控分析的,只会工具瞎跑的是性能外行。
为什么选择性能测试?
互联网用户越来越大,对性能要求越来越高,所以性能测试越来越被重视,很多招聘把性能作为必须项,或者加分项;
提升测试地位,因为性能是大部分开发的弱项,扬眉吐气,终于有机会怂开发了;
持续提升,性能需要比较广泛的知识面,不要不断学习。
性能测试的难点及前景:
性能需要学的东西很多,总之就是架构师的知识面了,需要不断的学习、实践、总结,要做深入,也需要代码,至少能看懂;
性能是经验的积累,做的越多,能力越强,薪资待遇也会越高。
关于性能等级,来看看网上有些资料是怎么说的:
性能外行(简称瞎跑型):会做简单的脚本跑并发(复杂的,需要写代码的,就搞不定了);
性能初级:会性能监控;
性能中级:会常见性能问题的定位调优;
性能高级:会调优,性能自动化预警监控、容量规划。
代码熟练程度:代码需要经常写,才不会生疏,测试开发基本上可以保持每天写代码,而性能写代码偏少,深入分析代码的几率也不高,不是所有性能问题都是代码问题;
能力提升:性能是架构师的知识面,需要不断深入、不断实践、不断积累、不断总结,能力会不断提升,而且,经常和高级开发、架构师沟通交流,和优秀的人一起,肯定能学到很多;由于测试开发出来的产品的使用对象(一般是内部使用)及用户量(偏少)等现状,不像专职开发,用到各种前沿的技术、框架,必须考虑性能、安全等等,所以提升远不如开发;
实用性:不是每个公司都需要测试开发、测试平台,对大部分公司来说,除了功能、自动化,性能、安全更为重要;
提升测试地位:论开发能力,绝大部分测试是比不过开发的,要提升测试地位,直接pk,多做和开发有交集的测试,比如性能,因为很多开发不会性能分析等等。
我比较倾向:自动化+性能,个人观点,仅供参考;
性能需要代码么?不是所有性能问题都需要分析代码,比如压测过程中,错误日志提升“获取不到jdbc连接”,这个就该考虑jdbc配置的问题了;如果要深入,做到高级性能,还是需要代码的,因为有些问题是代码的问题,至少能根据线程栈信息去看懂对应的代码,然后进行分析、定位;
如果喜欢代码,建议测试开发或者转开发,否则,建议性能;
结合自己的实际情况,选择喜欢的、适合自己的,不管哪个方向,只要努力做好,都不会差;
有人可能要问,为什么没有自动化测试?因为自动化测试基本上是必备技能了,要提升竞争力,必须还要学一个方向,另外,安全水太深,不推荐;
如果年轻没有基础,特别是才毕业不久的,建议学习测试,因为以后的趋势,有测试经验,不管是转开发还是产品,都更具有竞争力。
作者:多测师111
原文链接:https://blog.csdn.net/duoceshi/article/details/119795306