• 测试提升方向:你选测试开发?还是性能测试?


    前言

    忙忙碌碌又一年,2019的计划完成了么?目标达成了么?买房、买车、脱单、加薪等等,都是很现实的事儿,

    2020了,80后步入40,90后步入30,曾经的追风少年,如今的油腻大叔,突然感觉时间好残酷,

    职场也一样,竞争、裁员,不知道下一刻的命运,只有强者才能主宰自己的命运,无畏未来,正因为如此,大城市才兴起了很多付费的自习室,静心提升,

    作为一名测试人员,如何成为强者呢?

    如果想要在测试领域好好发展,提升自己的测试技术是必不可少的,但是,选对方向更为重要,

    半年前,写过一篇《测试技术提升建议》,引起了广泛共鸣,功能测试、自动化测试、测试开发、性能测试、安全测试、测试管理,每个测试方向都不简单,

    但是,大环境就是,你不会点代码、熟悉两个框架原理啥的,都是算low的, 

    最近半年多,不管是私聊还是群聊,我发现大家最向往的两个提升方向是测试开发和性能测试,

    当然,能都会,那最好,但是人的精力是有限的,选一个突破比较实际,下面就来简单谈谈我的看法。

    测试开发 

    这里说的测试开发,是真的能开发测试产品、测试工具的测试开发。

    为什么热衷测试开发?

    1、开发的成就感,大部分测试人员的编码能力是个短板(特别是前几年红利期,测试需求大,要求低,很多非计算机专业的转行做测试),要不然,大部分都做开发了吧?不管如何,能开发出东西来,对测试人员来说,也是非常让人有成就感的事情;

    2、工作压力小,开发测试工具或者测试产品,一般不会很紧急,因为都是内部使用,所以,相对公司里面临产品上线、项目交付压力的专职开发来说,压力小了很多,所以秃顶的测试开发很少; 

    测试开发的难点及前景:

    1、测试开发要求前端、后端都要会(一般的公司,不会给测试开发还配专职前端),可能还要自己设计产品,那就是全栈开发+了,如果产品设计不佳,可能最终无法落地投产,也可能迭代困难,最终要完全重构;

    2、对自己的开发能力提升有限,因为测试开发开发出来的工具或者产品,都是本公司内部使用,用户量有限,基本上不会考虑高并发、高可用、安全性等,估计也不会有这些性能及安全需求,不像专职开发,用到各种前沿的技术、框架,必须考虑性能、安全等等;

    性能测试

    这里说的性能测试不是只会用工具瞎跑而不会监控分析的,只会工具瞎跑的是性能外行。

    为什么选择性能测试?

    1、互联网用户越来越大,对性能要求越来越高,所以性能测试越来越被重视,很多招聘把性能作为必须项,或者加分项;

    2、提升测试地位,因为性能是大部分开发的弱项,扬眉吐气,终于有机会怂开发了;

    3、持续提升,性能需要比较广泛的知识面,不要不断学习; 

    性能测试的难点及前景:

    1、性能需要学的东西很多,总之就是架构师的知识面了,需要不断的学习、实践、总结,要做深入,也需要代码,至少能看懂;

    2、性能是经验的积累,做的越多,能力越强,薪资待遇也会越高;

    关于性能等级,来看看网上有些资料是怎么说的:

      性能外行(简称瞎跑型):会做简单的脚本跑并发(复杂的,需要写代码的,就搞不定了);

      性能初级:会性能监控;

      性能中级:会常见性能问题的定位调优;

      性能高级:会调优,性能自动化预警监控、容量规划;

    测试开发 VS 性能测试

    0、代码熟练程度:代码需要经常写,才不会生疏,测试开发基本上可以保持每天写代码,而性能写代码偏少,偶尔还是需要分析代码,不是所有性能问题都是代码问题;

    1、能力提升:性能是架构师的知识面,需要不断深入、不断实践、不断积累、不断总结,能力会不断提升,而且,经常和高级开发、架构师沟通交流,和优秀的人一起,肯定能学到很多;由于测试开发出来的产品的使用对象(一般是内部使用)及用户量(偏少)等现状,不像专职开发,用到各种前沿的技术、框架,必须考虑性能、安全等等,所以提升远不如开发;

    2、实用性:不是每个公司都需要测试开发、测试平台,对大部分公司来说,除了功能、自动化,性能、安全更为重要;

    3、提升测试地位:论开发能力,绝大部分测试是比不过开发的,要提升测试地位,直接pk,多做和开发有交集的测试,比如性能,因为很多开发不会性能分析等等;

    测试提升方向建议

    我比较倾向:自动化 + 性能,个人观点,仅供参考;

    性能需要代码么?不是所有性能问题都需要分析代码,比如压测过程中,错误日志提升“获取不到jdbc连接”,这个就该考虑jdbc配置的问题了;如果要深入,做到高级性能,还是需要代码的,因为有些问题是代码的问题,至少能根据线程栈信息去看懂对应的代码,然后进行分析、定位;总之,性能可以让你触类旁通;

    如果喜欢代码,建议测试开发或者转开发,否则,建议性能;

    结合自己的实际情况,选择喜欢的、适合自己的,不管哪个方向,只要努力做好,都不会差

    有人可能要问,为什么没有自动化测试?因为自动化测试基本上是必备技能了,要提升竞争力,必须还要学一个方向,另外,安全水太深,不推荐;

    如果年轻,特别是才毕业不久的,建议开发,因为以后的趋势的,有开发经验,不管是转测试还是产品,都更具有竞争力。

    后记

    技多不压身,持续学习,提升竞争力;

    你可以拒绝学习,但你的竞争对手绝对不会!​

  • 相关阅读:
    STM32F407Discovery开发板使用环境搭建
    NIO初识
    Mac下Boost环境搭建
    Android Studio增加NDK代码编译支持--Mac环境
    LNMP平台搭建---PHP安装篇
    LNMP平台搭建---MySQL安装篇
    支付系统流程
    从html字符串中获取div内容---jquery
    记一次进入新公司快速融入开发团队经历
    DataTable复制自身行
  • 原文地址:https://www.cnblogs.com/uncleyong/p/11995605.html
Copyright © 2020-2023  润新知