从初级测试工程师到测试专家,你的晋升路线是什么?
最近,我们讨论了软件测试工程的的分级,大家都贡献了自己的想法。

对于大家来说,软件测试人的分级其实也代表了我们的进阶方向,职业发展。总体来说,测试工程师未来发展有三个方向:
技术精英
行业专家
管理大师
根据自己的兴趣爱好,测试工程师可以从以下几个方向进行选择,今天我们先来讲技术路线。
如果你对测试技术很感兴趣,可以选择技术精英方向:初级测试工程师--中级测试工程师--高级测试工程师(测试架构师)--测试专家(资深测试架构师)。
晋升方法
如果你在大厂或中型企业,企业有相关晋升制度,与人事沟通好,如果满足晋升条件(各企业晋升制度略有差异),向领导表达自己的意愿,得到领导肯定后,提出申请,走企业内部的晋升流程。
如果你在小企业,且没有完善的晋升制度,根据招聘要求提前准备,然后跳槽实现晋升路线。
晋升思路
明白了晋升路线,我们就来讲讲,从初级测试工程师到测试专家,分别要掌握哪些技能,还有什么技巧吧~
初级测试工程师
测试基础
学习内容
①职业介绍:IT公司和互联网公司各岗位的工作职责,如开发、测试、产品、设计、项目经理等;
②软件流程:研发模型、研发流程、版本迭代、项目需求、需求文档、测试流程、上线流程等;
③测试设计:测试计划、测试方法、测试用例、测试管理工具;
④BUG:定义、分类、生命周期。
学习程度
能够理解并说出这些概念,能自己组织语言并讲清楚。
学习方法
网络搜索为主。
测试类型
功能测试
亦称黑盒测试,分app测试(手机上的应用程序)、web测试(浏览器访问的网页)、接口测试(后端服务器的测试)三种,根据公司要求,会其中一种,对另外两种了解,会根据需求文档编写测试用例,会简单的接口测试。
性能测试
了解常用性能测试工具,比如JMeter、LoadRunner等,会简单的操作。
自动化测试
具备编码能力(以开发app自动化、web自动化、接口自动化、PC自动化、数据自动化、各类自动化平台项目为主),至少了解一门编程语言,了解常用的自动化框架。
其它硬技能
编码能力
了解基本编程语法,非科班专业的建议学python。
数据库
能设置数据库配置并访问数据库,常用的增删查改sql语句。
其他技术
如多线程、Docker、k8s、中间件mq、nginx等,对初级测试工程师无要求。
软技能
测试技能决定了我们的测试职业发展,而软技能决定我们的整个职业生涯。
项目相关
干好本职测试工作,不要有太多想法,不断学习,努力进步。
职场相关
个人能力:以完成领导安排的任务为主,处于能力不断提升阶段;
解决问题能力:有解决问题思维,但独立解决问题能力弱;
做事风格:因为会的东西不多,比较谦逊,努力完成领导安排的任务。
中级测试工程师
测试基础
学习内容
①职业介绍:IT公司和互联网公司各岗位的工作职责,如开发、测试、产品、设计、项目经理等;
②软件流程:研发模型、研发流程、版本迭代、项目需求、需求文档、测试流程、上线流程等;
③测试设计:测试计划、测试方法、测试用例、测试管理工具;
④BUG:分类、生命周期。
学习程度
完全理解,能够在工作中实践基础,明确概念的真正意义,有自己的反思和总结。
学习方法
阅读测试书籍或参加测试培训课程。
测试类型
功能测试
亦称黑盒测试,分app测试(手机上的应用程序)、web测试(浏览器访问的网页)、接口测试(后端服务器的测试)三种都会;熟悉系统的业务和复杂接口测试,熟悉移动端应用测试的崩溃场景。
性能测试
熟练使用主流的性能测试工具,如JMeter、LoadRunner等,有相关性能压测经验;
了解服务架构设计;
熟练编写压测脚本,执行性能脚本,进行性能分析,并协助开发调优。
自动化测试
具备编码能力(以开发app自动化、web自动化、接口自动化、PC自动化、数据自动化、各类自动化平台项目为主),掌握一种或两种编程语言;
根据测试用例熟练编写自动化脚本,能够深入到自动化测试框架的方法层。
其它硬技能
编码能力
独立或部分独立实现项目的自动化编码。
数据库
子查询、分表查询、存储过程、索引、redis。
其他技术
如多线程、Docker、k8s、中间件mq、nginx等,能够根据公司要求,懂一些测试方法,对于出现的相关bug,了解问题所在。
软技能
测试技能决定了我们的测试职业发展,而软技能决定我们的整个职业生涯。
项目相关
熟悉测试业务,如果一直待在某行业,对该行业有了解和认识;除正常工作,开始思考如何提升自己,如提升工作效率、提升文档写作能力和个人总结(比如,线上事故引发的验收测试总结),学会边提bug边思考。
职场相关
个人能力:能够独立思考,对领导安排的任务游刃有余,能够持续学习。
解决问题能力:可以独立解决难点不大的问题、稍微有些风险意识。
做事风格:具备一定的的分析能力、执行力强。
高级测试工程师
测试基础
学习内容
①职业介绍:IT公司和互联网公司各岗位的工作职责,如开发、测试、产品、设计、项目经理等;
②软件流程:研发模型、研发流程、版本迭代、项目需求、需求文档、测试流程、上线流程等;
③测试设计:测试计划、测试方法、测试用例、测试管理工具;
④BUG:生命周期。
学习程度
吃透,随着思维和技能的提升,起于基础,又归于基础,以解决问题为导向。
学习方法
阅读相关书籍或浏览测试行业网站,学习最新测试技术。
测试类型
功能测试
亦称黑盒测试,分app测试(手机上的应用程序)、web测试(浏览器访问的网页)、接口测试(后端服务器的测试)三种都精通;
业务精英或者业务专家,可对产品提出需求漏洞,并给出解决方案;
有全局意识,风险意识和主人翁意识,保证需求文档的正确性;
能逆向思维,破坏性思维,减少线上需求缺陷。
性能测试
能分析性能瓶颈,善于分析和解决技术问题,具备良好的故障排除能力,能够处理性能测试过程中遇到的各种技术难题。熟悉常见数据库管理系统(如MySQL等)和性能调优方法。
自动化测试
具备编码能力(以开发app自动化、web自动化、接口自动化、PC自动化、数据自动化、各类自动化平台项目为主),掌握各类开发技术,充分了解各编码语言、各自动化框架的优缺点,能够选择适合项目的自动化框架,深入到自动化测试的架构层,具备框架开发能力;能独立承担中大型自动化测试项目。
其它硬技能
编码能力
独立完成多个复杂项目的自动化框架搭建;熟悉常见架构和分布式系统,能实现后端服务,具备全栈开发能力。
数据库
搭建数据库服务,批量造测试数据,优化sql,与数据库相关的问题排查。
其他技术
如多线程、Docker、k8s、中间件mq、nginx等,熟练掌握各类技术,知道其原理,上手测试得心应手。
软技能
测试技能决定了我们的测试职业发展,而软技能决定我们的整个职业生涯。
项目相关
站在用户角度测试,吃透业务,吃透行业,吃透测试的本质,独当一面,输出并分享。
职场相关
个人能力:能够独立思考,逻辑思维能力强,持续学习。
解决问题能力:有解决问题思维、有风险意识。
做事风格:有较强的分析能力、执行力、沟通能力和团队协作能力。
测试专家
测试基础
学习内容
①职业介绍:IT公司和互联网公司各岗位的工作职责,如开发、测试、产品、设计、项目经理等;
②软件流程:研发模型、研发流程、版本迭代、项目需求、需求文档、测试流程、上线流程等;
③测试设计:测试计划、测试方法、测试用例、测试管理工具;
④BUG:生命周期。
学习程度
以不变应万变,已达”修仙”程度。
学习方法
浏览国内外专业网站、参与测试开发社团持续学习和进修。
测试类型
功能测试
亦称黑盒测试,分app测试(手机上的应用程序)、web测试(浏览器访问的网页)、接口测试(后端服务器的测试)三种。
测试专家参与业务、技术方向把控,决策项目发展方向。
性能测试
懂架构、会调优,具备压力测试和容量规划的知识和经验,能够根据系统需求和预期负载,评估系统的容量,并制定相应的扩展和优化方案。
把控性能测试策略、指导性能测试技术、制定性能优化方案等。
自动化测试
具备编码能力(以开发app自动化、web自动化、接口自动化、PC自动化、数据自动化、各类自动化平台项目为主),熟悉掌握各自动化框架的优缺点,能根据项目特点进行自动化技术选型,根据项目需求开发自动化测试平台、效能平台。
能带领自动化测试工程师完成大型自动化测试项目。
其它硬技能
编码能力
带领团队完成多个复杂项目的自动化搭建。对于他们而言,编程语言(跟汉语一样)只是一种语言,思路是一样的,只是存在语法的细微差异而已。
数据库
熟悉常见数据库的内部结构;能够根据项目特点和数据库系统特点,给出项目数据库选择的建设性意见。
其他技术
如多线程、Docker、k8s、中间件mq、nginx等,能够根据需要研发各种技术,提高测试工程师的工作效率和解决测试工程师的工作瓶颈。
软技能
测试技能决定了我们的测试职业发展,而软技能决定我们的整个职业生涯。
项目相关
把控项目进度、降低项目成本,提高项目绩效,挖掘更多项目、把握项目方向与盈亏责任等。
职场相关
个人能力:具有创新精神,乐于分享,带领测试团队完成测试技术难题攻克,逻辑思维能力强,持续学习。
解决问题能力:有解决问题能力强、有强烈的风险意识。
做事风格:有很强的分析能力、技术攻克能力和团队协作能力。
文末了:
可以到我的个人号:atstudy-js,可以免费领取一份10G软件测试工程师面试宝典文档资料。同时我邀请你进入我们的软件测试学习交流平台,大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,了解测试行业的最新趋势,助你快速进阶Python自动化测试/测试开发,稳住当前职位同时走向高薪之路。
相关文章:
从初级测试工程师到测试专家,你的晋升路线是什么?
最近,我们讨论了软件测试工程的的分级,大家都贡献了自己的想法。 对于大家来说,软件测试人的分级其实也代表了我们的进阶方向,职业发展。总体来说,测试工程师未来发展有三个方向: 技术精英 行业专家 管理…...
合肥中科深谷嵌入式项目实战——人工智能与机械臂(四)
订阅:新手可以订阅我的其他专栏。免费阶段订阅量1000 python项目实战 Python编程基础教程系列(零基础小白搬砖逆袭) 作者:爱吃饼干的小白鼠。Python领域优质创作者,2022年度博客新星top100入围,荣获多家平台专家称号。…...
Zynq-Linux移植学习笔记之64- 国产ZYNQ在linux下配置国产5396芯片
1、背景介绍 复旦微ZYNQ通过SPI配置国产JEM5396,框图如下: 现在需要在linux下的应用程序内配置JEM5396的寄存器。其中FMQL和进口的XILINX ZYNQ类似,JEM5396和进口的BCM5396兼容。因此可以参考进口ZYNQ在linux下配置BCM5396过程。Zynq-Linux移…...
系统架构设计师-第19章-大数据架构设计理论与实践-软考学习笔记
传统数据处理系统存在的问题 传统数据处理系统存在以下问题: 1. 数据孤岛问题:不同部门或系统之间的数据隔离,数据无法共享和整合。 2. 数据不一致性问题:由于数据维护分散,同一数据在不同系统或部门中可能存在不同…...
论坛搭建.
目录 一.配置软件仓库 二.安装http php miriadb 三.配置数据库 四.源码拖拽并解压 五.防火墙通过 六.浏览器安装测试 七.界面参数设置 一.配置软件仓库 1.进入仓库目录 cd /etc/yum.repos.d 2.创建仓库文件 vim local.repo 3.在 local.repo中写入:(粘贴的时候注意位…...
三种前端埋点方式
什么是埋点 埋点是数据采集领域(尤其是用户行为数据采集领域)的术语,指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。比如用户某个icon点击次数、观看某个视频的时长等等。 我们可以知道埋点实际上是对特定事件或…...
html获取网络数据,列表展示 第二种
html获取网络数据,列表展示 第二种 js遍历json数组中的json对象 image.png || - 判断数据是否为空,为空就显示 - <!DOCTYPE html> <html><head><meta charset"utf-8"><title>网页列表</title><script …...
【Python 算法】信号处理通过陷波滤波器准确去除工频干扰
对于一个信号来说通常汇入工频噪声往往是因为交流电产生的电泳,影响了我们信号采集导致信号上存在工频干扰。 那么matlab去除工频干扰可以通过陷波滤波器实现。 通常使用scipy.signal实现信号的处理。 Scipy的信号处理模块(scipy.signal)来创…...
Redis(08)| 线程模型
一、redis 的线程模型 redis 内部使用文件事件处理器 file event handler,它是单线程的,所以redis才叫做单线程模型。它采用IO多路复用机制同时监听多个 socket,将产生事件的 socket 压入内存队列中,事件分派器根据 socket 上的事…...
Java14-16新特性
目录 一、Java14新特性 1、instanceof模式匹配 2、友好的空指针(NullPointerException)提示 3、record类型 二、Java15新特性 1、Sealed Classes 2、CharSequence新增方法 3、TreeMap新增方法 4、文本块 5、无需配置环境变量 三、Java16新特性 1、包装类构造方法的…...
中兴再推爆款,双2.5G网口的巡天AX3000Pro+仅需299元
10月30日消息,中兴新款路由器中兴巡天AX3000Pro将于10月31日20:00正式开售,当前可在天猫、京东及红魔商城进行预约,首发价格299元。 据了解,中兴巡天AX3000Pro是中兴智慧家庭推出的巡天系列新品,也是当前市场上唯一一款300元价位内配备双2.5G网口的路由器。 中兴巡天AX3000Pro…...
【系统架构】架构风格专题
目录 1、定义 2、通用架构风格分类 3、架构风格比较 4、示例:管道-过滤 VS 数据仓库)比较因素分析 1、定义 架构风格:描述某一特定应用领域中系统组织方式的惯用模式,反映了领域中众多系统所共有的结构和语义特性,…...
【Qt】盒子布局、网格布局、表单布局和堆栈布局
盒子布局 QBoxLayout可以在水平方向或垂直方向上排列控件,分别派生了QHBoxLayout、QVBoxLayout子类。 QHBoxLayout:水平布局,在水平方向上排列控件,即:左右排列。QVBoxLayout:垂直布局,在垂直…...
GO语言,半自动打怪
仅供学习参考,切勿用于商业用途 package mainimport ("fmt""github.com/go-vgo/robotgo""math/rand""time" )const (taskNum 7 )type Task struct {Name stringSleepTime1 intSleepTime2 intFunc func() }fu…...
【Java 进阶篇】Java登录案例详解
登录是Web应用程序中常见的功能,它允许用户提供凭证(通常是用户名和密码)以验证其身份。本文将详细介绍如何使用Java创建一个简单的登录功能,并解释登录的工作原理。我们将覆盖以下内容: 登录的基本概念创建一个简单的…...
Vue 菜单导航栏,轮播图
导航菜单栏结构和样式代码实现 一级导航栏 views/HomeView.vue <template><div><Shortcut></Shortcut><Header></Header><div class"inner"><Navigation></Navigation></div><div>我是主页&l…...
讲述为什么要学习Adobe XD以及 Adobe XD下载安装
首先 我们要了解 Adobe XD 是个什么东西 XD是Adobe公司专门开发出来面向交互、界面设计的矢量绘图工具。 然后是 他可以做什么? 最基本的 可以做UI界面设置 所有 手机 平板 电脑等设备的UI界面 我们都可以通过XD完成 还有就是原型设置 我们可以做各种界面图 还有…...
Netty复习:(1)Http server: hello world
一、加依赖 <dependency><groupId>io.netty</groupId><artifactId>netty-all</artifactId><version>4.1.72.Final</version></dependency>二、创建自定义的handler package cn.edu.tju.handler;import io.netty.buffer.ByteB…...
【Python 千题 —— 基础篇】加法计算
题目描述 题目描述 编写一个程序,接受用户输入的两个数字,然后计算这两个数字的和,并输出结果。 输入描述 输入两个数字,用回车隔开两个数字。 输出描述 程序将计算这两个数字的和,并输出结果。 示例 示例 ① …...
基于纵横交叉算法的无人机航迹规划-附代码
基于纵横交叉算法的无人机航迹规划 文章目录 基于纵横交叉算法的无人机航迹规划1.纵横交叉搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要:本文主要介绍利用纵横交叉算法来优化无人机航迹规划。 …...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
剑指offer20_链表中环的入口节点
链表中环的入口节点 给定一个链表,若其中包含环,则输出环的入口节点。 若其中不包含环,则输出null。 数据范围 节点 val 值取值范围 [ 1 , 1000 ] [1,1000] [1,1000]。 节点 val 值各不相同。 链表长度 [ 0 , 500 ] [0,500] [0,500]。 …...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈
在日常iOS开发过程中,性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期,开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发,但背后往往隐藏着系统资源调度不当…...
Chromium 136 编译指南 Windows篇:depot_tools 配置与源码获取(二)
引言 工欲善其事,必先利其器。在完成了 Visual Studio 2022 和 Windows SDK 的安装后,我们即将接触到 Chromium 开发生态中最核心的工具——depot_tools。这个由 Google 精心打造的工具集,就像是连接开发者与 Chromium 庞大代码库的智能桥梁…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...
