• 0
  • 0
分享
  • 在行业变化中分析软件测试发展趋势——软件测试圈
  • 恬恬圈 2023-02-27 16:06:58 字数 3060 阅读 902 收藏 0

  互联网新趋势和新要求的推动下,测试行业也在不知不觉中发生着非常大的改变,从早些年的懵懂发展,到大多数高校设立软件测试专业,再到近几年各种测试培训盛行。

  如果说早期软件测试行业还是一个风口,随着转行人员及毕业的大学生疯狂地涌入,目前软件测试行业的“缺口”已经基本饱和,最基础的功能测试的岗位需求已经越来越少。软件测试行业的门槛,也从真正的零基础,到现在的要求具备计算机专业能力(包括但不限于编程能力),软件测试在企业中,特别是在互联网行业的企业中,也从可有可无发展到不可或缺。

  如果把测试行业按照发展时期来分,可分为以下 2 个阶段:

  1) 2010 年以前,在绝大多数企业中,测试实践的重心都放在系统功能的验收阶段,测试人员的主要工作基本都围绕着基于业务的黑盒测试,对编码能力、系统理解能力要求不多;

  2) 2010 年后,随着互联网产品的快速发展,各行各业对软件质量的强需求,以及大数据、云计算、AI 人工智能等前沿技术的涌入,传统的测试工作模式和工作范围越来越无法满足行业的需要和产品的质量要求。

  这一点在企业的用人招聘上表现得尤为突出,如今对于一二线互联网企业的测试招聘者而言,想找到一个合适的人选非常艰难。同样,对于测试求职者而言,会发现应聘要求也越来越严苛,除了学历(现在基本都要求 211 或 985)、年龄、项目经验,还需要具备代码设计能力、软件架构能力、学习创新能力、较强的沟通能力、解决问题能力等。

  但即便如此,仍有大量的测试人员依旧处在石器时代,过着茹毛饮血、敲敲打打(停留在功能测试的“点点点”)的日子,最终导致人才供求难以实现平衡,这从侧面也反映出国内大部分测试人员存在的问题。

  1.功能测试关注面比较窄

  从产品质量来讲,不管测试的是 PC 端、Web 端、还是 App 端的产品,功能测试都是基础。

  虽然也会有相关的测试流程,如需求分析、测试用例编写、用例评审、提测验收、功能测试、Bug 回归等,但是很多测试人员只关注自己的需求,而不关注这个需求在产品的整个生命周期中的作用,缺乏产品的整体考量,导致在参与大型产品项目开发或与多部门进行合作时,不知如何应对。

  例如,在对一款 App 产品进行测试时,测试人员可能只会考虑 App 的功能本身,而对接口调用传递、服务组件的测试及后端数据的校验缺乏有效的关注。

  2.过于追求测试工具的使用

  最近几年,随着开源社区的流行,绝大部分行业中共存的问题,在开源社区中都能找到相应的解决方案或处理问题的工具。所以很多测试人员抱着只要学会了这些测试工具,就能解决测试工作中所有问题的想法。

  在测试工具的应用上缺乏尝试和创新,要么只了解公司现有的框架,要么只在公司现在的框架上编写用例,而不去了解整体框架的工作原理。或者盲目选择市面上现有的开源测试工具,仅仅满足于使用,而不去了解为什么要这么用、还有没有其他相关的工具、这个工具是如何解决我们的问题的、这个工具背后的实现原理又是什么。

  在提及这个问题时笔者不禁联想到,很早之前华为在推行 IPD 组织变革时的一些思想,原文是这样说的:“华为靠 IBM 的咨询,成功推进了 IPD 的组织变革。

  不仅仅靠任正非要求的对 IPD 的‘先僵化、后优化、再固化’,更重要的是华为掌握了咨询公司提供管理解决方案背后的管理本质,管理本质不是咨询公司提供的管理解决方案,而是管理解决方案背后的优秀经营思维,通过掌握优秀管理模式背后的优秀经营思维,然后根据自己企业的实际情况再次设计出相应的管理解决方案。”

  在我们借用测试工具、测试框架来解决实际的工作问题时,虽然具备工具化、工程化思维固然重要,但是更重要的是要掌握工具解决问题背后的本质和思想。

  3.企业人员空缺仍较多,但求职者能力达标少

  这个点可能会刺痛一些读者,但正因如此我们才更应该直面当前的不足。从近几年各行各业企业的招聘情况来看,企业对测试人员的要求越来越高,仅仅响应需求的功能测试人员基本饱和。对于通过社招渠道找工作的人,基本都要求其具有一定的自动化测试或编写代码经验,能解决在工作过程中遇到的问题。换句话说,企业更需要编码能力较强、能参与公司相关测试开发的人员。

  不少测试人员在面试过程中会被要求做编程题,例如单链表逆序、二叉树遍历、日志过滤等。这一方面是看面试者的编码能力如何,另一方面也能从编码习惯来看面试者有没有参加过大型的项目开发。再者还会给一个具体的问题,让面试者来给出解决方案。

  例如,现在有一个全新的 App,如果让你负责测试,你会实施哪些测试方案?不像以前那样做个逻辑题或写个测试用例就行了。这个变化也预示着企业现在越来越偏爱那些能帮助团队解决实际问题、多方位发展的复合型测试人才。

  4.资深测试开发人员、测试架构师稀缺

  测试行业不断发展,已经呈现出严重的两极分化势态:

  1) 一边是资深的测试大牛,属于全栈复合型人才,这一类人员在行业中较为稀少。一是由于行业原因,代码能力强、有架构经验的人员一般都在开发部门;二是要求高,资深测试开发工程师、测试架构师不仅要精通测试相关的技能,还要会前端设计、服务端开发等,几乎是全栈工程师。

  2) 另一边是测试小白,即便有些在测试行业中已经摸爬滚打了几年,但仍然还是停留在只会业务功能测试的这个阶段。而针对这类测试人员,除了一些安于现状的人,大多数人其实都还是想学习、想进步的,只是不知道学习方向、学习方法。

  但不管是哪种情况,对于企业而言,想快速发展自己的业务,必须有一个强大的测试团队,通过一系列的质量保障手段,如引入 CI、CD 及其他的手段来促进项目的快速迭代与交付。这就要求相关的测试工程师要能从多方面来考虑并解决问题,不仅要考虑项目的实施成本,还要考虑测试、开发、产品甚至用户等,同时要与公司的发展前景及方向相切合,并能很好地为之服务。

  拥有这些能力的测试人才在公司都是较为吃香的,每年招聘季也就那么几个人会进入人才市场流通,而且很快就能找到工作,这是每个测试人员的努力方向,只有具备了相应的实力,才有资格向企业要求你期望的回报。

  上面四点只是测试行业大部分现状的一个缩影,并不全面,从另一个角度看,测试行业正在进入一个全新的阶段,表现出全新的特点。

  1.纯功能测试人员正在退出舞台

  从测试行业被广泛认可时起,不论是通过自学,还是通过培训机构培训,大量测试人员最后都进入互联网的各个行业中,刚开始的情况一片大好,经过几年快速发展后,企业对测试人员的要求越来越高。不管工作了几年,如果你仅仅只会功能测试、测试工具的使用,或者只会在公司现有的平台、框架下写写自动化测试用例,则几乎是无法适应大部分企业的需求的。

  2.对测试能力要求越来越综合

  随着功能测试人员逐渐退出测试行业,企业对测试人员的能力要求也越来越偏向全方位化,在测试技术方面,随着互联网新技术越来越多,对测试人员的技术要求也越来越精、越来越广。

  先前的测试工程师、测试开发工程师,能搭建自动化测试框架、持续集成框架、使用开源的框架解决工作中遇到的问题就合格了。而现在很多企业在招聘面试的时候,特别是针对测试开发岗位,要求应聘者不仅要掌握常用的测试框架的使用,而且还要具有一点开发技术、数据库技术和架构能力。越来越接近开发岗位的要求,有的甚至要求更高。


作者:佚名    

来源:http://www.51testing.com/html/51/n-7793551.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 作为技术人员在工作中总是会遇到各种问题,简单的问题查下资料就能解决,而复杂的问题常常需要花费时间尝试各种办法,而这些问题其他同行也会用到,将项目遇到的问题输出博客,既能总结经验提升技术又能分享知识帮助别人学习。我认为写博客是一个很好的成长方式,另外,博客也可以作为个人作品。怎么写博客测试圈有很多写博客的平台都支持免费发布,随手一搜就找到啦,比如本文的发布平台:51testing软件测试圈。技术类的文章通常使用Markdown格式编写,语法很简单,基本上写一次就能学会。不管是解决方案,还是文章随笔都可以作为博客发表,前提是不违反平台规则。为什么要养成习惯有一阵子项目工作比较忙,遇到的问题查到资料...
            0 0 1032
            分享
          • 正式入职软件测试这行有5年了,接触了很多项目和开发人员。这些项目包含跨平台迁移、原有平台更新迭代及新类型需求开发等类型。这些开发人员中有高级开发人员,也有初入职的实习生,针对不同类型的开发人员有着因人而异的沟通方式。跨平台迁移项目仅仅依据需求文档是不够的,还需要在原有平台熟悉业务功能点,再结合需求文档更好的把握待迁移系统的核心功能。新平台的开发有难度是肯定的,初期提交给测试人员的成果物质量很糟糕,有时候提交测试的流程根本跑不通,测试人员原本做好大展身手的准备,却被这无情的现状打击到,这时焦虑情绪就会产生。随着开发人员对新平台越来越熟悉和前期提出的bug不断的得到解决,新平台新系统的功能也越来越...
            2 0 2718
            分享
          • 一、背景漏测 Bug 是指产品逻辑缺陷在测试过程中没有被发现(尤其是测试环境可以重现的缺陷),上线版本发布后或者在用户使用体验后发现并反馈回来的缺陷。可能造成线上故障或者资损,在对产品测试过程中,自己也难免出现一些 Bug 的漏测,因此对 Bug 漏测进行一些思考,并进行总结。二、原因分析Bug 其实是任何应用产品都会有的一个问题,不是所有的 Bug 都能被发现,包括资深测试,或多或少的会出现线上缺陷,谁也不能把软件所有的功能操作、运用场景想周全。虽说不能做到完全零缺陷,但是每次发布的产品,我们需要追求缺陷越来越少,产品质量越来越高,减少线上问题的反馈。为什么会出现缺陷漏测,主要有以下几点:2...
            1 2 4439
            分享
          • 1、你的测试职业发展是什么?测试经验越多,测试能力越高。所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去。而且我也有初步的职业规划,前3年积累测试经验,按如何做好测试工程师的要点去要求自己,不断更新自己改正自己,做好测试任务。2、你认为测试人员需要具备哪些素质做测试应该要有一定的协调能力,因为测试人员经常要与开发接触处理一些问题,如果处理不好的话会引起一些冲突,这样的话工作上就会不好做。还有测试人员要有一定的耐心,有的时候做测试很枯燥乏味。除了耐心,测试人员不能放过每一个可能的错误。3、你为什么能够做测试这一行虽然我的测试技术还不是很成熟,但是我觉得我还是可以胜任软件测试这个工作...
            13 15 1925
            分享
          •   作为一名软件测试工程师,我们的角色可以算是“战场上的后勤”,战役的胜败和所有团队人员都息息相关。但是难免碰到战役失败后,很多团队互相推脱的局面,而测试人员就是所有团队中的弱势群体,自然是首当其冲的背锅侠!相信你在做测试时肯定听过下面这些话吧:  “哪有这么多测试时间,你加快点测就完了”   “这么明显的bug居然没测出来,这关我们开发什么事”   “出现这么多bug,你当时怎么测的啊”   “仔细核对下需求,这个不是bug”   “这么低级的bug你都测不出来吗?,你到底怎么做测试的?”   “这么明显的bug都没测出来就让我们上线了”   “研发时间不够,你压缩一下测试时间”   “你测...
            1 1 935
            分享
      • 51testing软件测试圈微信