【刷题】面筋-测开-软件测试岗位的理解+职业规划

目录

职业认识

  • 软件测试的意义

    • 尽早、尽可能用最少的测试发现尽量多的问题,以保证软件产品的质量。
  • 什么是测试工程师?

    • 以软件开发为例,宏观上说测试工程师就是软件质量的把关者,在一个软件开发流程中测试人员要与开发人员一块儿对软件的研发进行负责,软件进行质量把关,开发进行功能实现,相辅相成。
    • 测试又分为传统的测试工程师和测试开发工程师,测试开发工程师(如下简称测开)就要在上述的基础上最少在掌握一门脚本语言,两门及以上更好,脚本语言包括但不局限于Python,golang,shell等等由于测试开发工程师实际上是造轮子的,换言之就是开发测试用的各类工具;测试工程师对代码要求较测开低一些,但不是一窍不通(我面试的时候都会遇到代码问题),不懂代码层次的问题的话其实就很差进行测试分析这个后面再解释为何。
  • 测试开发工程师的工做职责和内容

    • 测试工程师简单点说就是找bug,而后反馈给开发人员,不要小看这个工做。
    • 首先很明显的bug开发人员有时候本身就能找到,测试人员要有比开发人员更加全面的想法才能找到深层次的问题点,
    • 其次,要端正一个态度就是测试人员不是一个电脑小白,相反国外顶级的测试开发工程师同时也是顶级的开发工程师甚至更厉害,因此做为一个测试工程师必定要有继续学习的精神和心态,而后明白测试工程师要会写测试用例,要会使用自动化工具,甚至白盒测试工程师要懂代码,要具有广阔的知识面。
  • 自动化测试

    • 首先说一下自动化测试是什么?自动化测试从职能上讲就是去在必定的框架下去开发一些自动化测试脚原本实现QA所作不到的事情,拿fgo来举栗子比较合适,众所周知fgo核心玩法之一就是抽卡,这个抽卡是有几率的(欧皇请自动左滑),而QA是不可能去抽几十万次甚至上百万次来验证几率问题,这时候就要自动化脚原本模拟抽卡去抽,看看几率算法是否有问题,原本自动化测试其实在某种意义上是一种灰盒测试,可是如今不少公司会把自动化测试归到测开里面去,因此如今自动化就偏白盒一些。
    • 第二个要说的就是语言,如今自动化测试流行的语言就是Python,shell,golang,(听说要是cpp厉害的也能够),不是很死板,但主流必定是脚本语言。
    • 游戏QA的话要求会更高,由于传统软件测试要看的方面游戏要测试,而传统软件不做为重点的地方游戏也要测试,因此游戏测试工程师相对来讲是工做量会大一些。
  • 技术向的晋升路线

    • 初级测试工程师:测试计划、测试文档、测试执行、结果整理等,门槛不高。
    • 测试开发工程师:核心-编程能力、自动化能力。
    • 测试架构师:在整个测试架构上参与和管理测试,更强调测试流程管理和质量监管,以及白盒测试能力,对测试工具和平台的开发等
  • 提高核心竞争力

    • 技术:编程、自动化、技术架构能力
      • 语言:java和Python等脚本语言。学生的能力。
      • 自动化:测试领域生产力,基础能力。3-5年核心。
      • 架构:更深刻的能力,流程管理和白盒测试能力等。5年以上核心。
    • 领域知识:领域架构能力、业务领域、数据意识。
      • 数据:核心。
    • 软实力:沟通、管理
  • 测试工程师的核心业务

    • 前端UI测试:web,app,gui
    • 后端接口测试:sdk,restful,rpc
    • 非功能质量:性能,安全
    • 流程管理:持续集成,持续交付,devops
    • 数据分析:监控平台,数据分析平台,ai辅助平台

职业规划

  • 《软件测试质量保证》所述职业规划

    • [1~2年],测试技能:熟悉整个测试过程及产品业务领域,学习和掌握自动测试工具,学习测试自动化编程技术;开发和执行测试脚本,承担系统测试实施任务;学习编程语言、操做系统、网络与数据库方面的技能。
    • [3~4年],测试过程:深刻了解测试过程,掌握测试过程设计及改进,参与软件工做产品的同行评审;进一步了解产品业务领域,改进测试自动化编程技术,能指导初级测试工程师;增强编程语言、操做系统、网络与数据库方面的技能。
    • [4~5年],测试组织工做:管理1~3名测试工程师,担任任务估算、管理及进度控制;进一步培养在软件项目管理及支持工具方面的技能。
    • [5~6年],技术管理:管理4~8名测试工程师,提升任务估算、管理及进度控制能力,完成测试规划冰制定测试计划;研究测试的技术手段,保持使用项目指导及支持工具的技能;用大量的时间为其余测试工程师提供技术及过程方面的指导;开始与客户打交道并作演示推介。
    • [6~12年],测试管理:管理8名以上测试工程师,负责一个或多个项目的测试工做,与客户打交道并作演示推介;保持使用项目管理及支持工具的技能。
  • 发展取决于三点:业务技能、专业技能(测试技能)、管理技能。

    • 经过对本身这三方面的评估,综合选择本身要走的道路。
    • 测试岗位路线
      • 管理:IT作管理,技术深度与广度都会有必定要求,基本管理技能为主,专业技能、业务技能为辅。管理者不懂技术,很难服众。
      • 技术:有技术不愁没工做,固然人品仍是要的。
      • 建议技术高薪方向:白盒测试、自动化测试、性能测试、安全测试,固然有机会走管理也别放过机会,毕竟管理薪资不低哈。
    • 转岗其余路线
      • 方向选择:不少入行测试只是过渡。由测试岗位的锻炼,涉及到软件各个岗位的接触。此时转岗容易很多。
      • 好比业务技能强、市场敏感度、洞察力厉害的建议产品经理、运营方向;
      • 好比喜欢编码加班,咳咳,是喜欢与机器打交道建议研发、运维方向等;
      • 喜欢与机器打交道的能够走运维、研发路线。
      • 喜欢与人沟通的可走销售、HR路线。

参考连接

END