毕业四年换了3份软件测试工作,我为何仍焦虑?
今天一看日历:2023.2.11 ,才突然意识到自己毕业已经四年了。四年时间里一直在测试行业摸爬滚打,现在是时候记录一下了。
下面我来分享下我这4年软件测试经验及成长历程,或许能帮助你解决很多工作中的迷惑。
01、我是如何开始做测试的?
2015年开始上大学,一个不算好的小二本,专业也是被调剂的-信息与计算科学,看起来高大上的专业,实际到真正学习的时候才发现,学习的东西泛而不精,数学知识与计算机知识掺杂,导致大学学了四年后,对什么都一知半解,更找不到毕业后的方向和职业规划。
一个偶然的机会,接触到了嵌入式,听说发展前景很好。由于当时对就业的迷茫,终于没能抵挡住诱惑,就这样,大四那年基本都是在嵌入式学习中度过的。但是后面的事情不容乐观,越学越觉得自己不适合做编程,尤其是涉及到跟硬件相关的东西,更是一窍不通。学了一年,什么都没学到,顶多算把大学里学的C语言、C++基础巩固了下。
但是这个学习过程也并不是没有一点好处的,一般企业看到毕业生有多项技能,会对你更加感兴趣,自己去找工作时也更加有信心,虽然实际并没有比别人强多少,但简历还算漂亮……鉴于自己对写代码并不感冒,认真考虑后,决定毕业后从事软件测试行业。
为了更好地胜任软件测试工作,我也查询了一些资料,下面分享一下软件测试的成长路线和技能要求:(文末有作者学习笔记分享)
第一阶段:手工测试工程师
年薪8-10W
主要技能:测试分析+用例设计+测试执行
↓
第二阶段:自动化测试工程师
年薪15-25W
主要技能:测试脚本研发能力
↓
第三阶段:全栈自动化测试工程师
年薪30-50W
主要技能:所有类型所需自动化测试技术
↓
第四阶段:测试开发工程师
年薪50-80W
主要技能:测试框架及测试工具的需求、设计及研发能力
02、毕业后的第一份测试工作
2019年7月份,毕业如期而至,还好找工作并没有想象中的那么难,参加了一次校园招聘,就直接被录用了。
我毕业后的第一家公司,暂且称它为“A公司”。在A公司一共工作了三年,这三年时间对我的影响非常大。实习期间,遇到了我师父,算是我的伯乐之一。师父人特别好,尤其对我们这些刚毕业的没有任何工作经验的实习生。
从最基础的软件测试理论开始学习,然后再运用于实践-Android系统手机功能模块测试。学习期间,师父发现我有一点管理的潜质,他请假的时候,都找我来当他的backup,帮他分配任务,处理一些管理上的事情。慢慢地,接触的人越来越多。
做了大概一年的时间,被部长看中,让我来单独负责一个项目,锻炼锻炼。我诚惶诚恐,带领了四五个组员开始负责这个项目。为了让大家信服,我自己私下里不断学习,不断向研发请教各类问题,所以组员们问我问题的时候,基本都能顶下来,除了这些,我还组织组员们学习各种知识,参加各种培训,大家觉得成长了,真正学到东西了,也会愿意跟着你干。
后面项目越带越顺,项目期间也没出现过大的差错,一年时间,领导看到了我的努力,提拔我为测试经理。得到这个职位的时候,我既欣喜与自己的努力得到了汇报,又深深感觉到自己身上的担子越来越大,需要更多地充实自己、完善自己,才能抵挡住各种压力,承担起测试经理该承担的责任。
做测试经理期间,也没敢有半点懈怠,值得一提的是,我来公司的两年里,软件测试一直局限于功能测试,网上看到很多自动化测试方法,但是看了之后没有头绪,刚好兄弟部门也在做自动化测试,我就跟他一起学习Python语言,学习写一些简单的自动化测试脚本,然后用到了自己的项目中,然而当时并不知道怎么判断出错,怎么抓取日志,只是初步的脚本可以跑起来。女怕嫁错郎,男怕选错行。一旦入错行,唯有泪两行。很多时候,能否进入某个行业自己也难以控制,是存在多方面原因的。
虽然如此,内心还是有很大的成就感,起码迈出了第一步。后来我教给我组员学习,组织简单的培训,这也算测试部的一个突破吧。
做了测试经理大概一年的时间,感觉自己遇到了瓶颈,因为公司毕业生比较多,没有测试技术方面的大牛,测试技术很难得到提升。
后来,做了一个艰难的决定,离职。之所以艰难,是因为在这里三年,我遇到了我的伯乐,从毕业开始一步步指引我走上了管理岗位,遇到了很多帮助我的人,对这里的一切充满了感恩。
有人会说,我太幸运了,遇到了那么多帮助我的人。我只想说,只有平时不断学习,不断努力,当机会来临时,你才有可能抓住,否则,别人想帮你,也找不到帮助你的理由。
03、第二份测试工作经验分享
从A公司离职后,找工作也比较顺利。得到了几个手机公司的offer,后来决定去B公司做测试项目经理VPM。这家公司是国内外知名的大公司,而我所在平板部门是集团下的一个事业部,专门做海外产品。
在B公司工作,因为全是销往海外,所以跟各个国家的人打交道很多,需要有很强的英语功底。邮件全英文,提bug,全英文描述。我虽然英语六级,面试的时候也面试英语口语,也顺利通过了,但是真正跟外国人开会时,很多都听不懂,尤其听法国人说英语,更是不知道他在说什么,这个也一直是我的瓶颈所在,没事就疯狂地听各种英语脱口秀、英文美文等。
这里的VPM职责跟A公司不太一样,只管项目不管人,你项目需要人时需要从各个Teamleader那里协调人力,而且调到你项目的人的绩效也不是归你负责的,所以VPM丧失了主动权。但是公司目前在改革,开始朝强项目矩阵发展,但是转变的过程是痛苦的,需要适应各种的不习惯。
B公司项目管理流程做的是非常不错的,而且近期通过了TL9000审核,项目各个节点有总经理和研发总监严格评审和把关,出现问题之后,第一时间搞清楚事情来龙去脉,以及下一步的Action,没有Action必定会遭到劈头盖脸一顿骂。公司倡导“鹰”的文化,基于这样的企业文化,公司上上下下的效率很高,但是无形之中给每个人很大的压力,气氛不像A公司那么和谐。
说下重点,测试方面的。B公司测试小组分为三个:系统测试小组、场测小组、自动化测试小组。每个小组都有一个Teamleader。测试跟A公司大同小异,值得一提的是自动化测试做的比较好。
在B公司学到了两点我觉得比较重要的:项目流程管理和抗压能力。在B公司做了一年多,但是考虑到自己的终身大事,决定跟男朋友结束异地生活,毅然选择了离职。
离开B公司还是蛮多遗憾的:
1、没有做过运营商项目,不清楚各个运营商项目的流程;
2、没有等到出国深造的机会;
3、以后的工作可能没有这样的英语工作环境,除非找个外企。
目前已经得到国内一家手机公司的测试经理的offer,薪资福利达到了预期,已经决定签了。B公司的离职手续还在进行中。
04、4年经验,与你共勉
基于我4年的职业经验,以下几点与大家共勉:
1、无论从事什么行业,刚毕业的几年之内,一定要先把基础打好,尤其是技术类工作。以后不论走技术路线还是管理路线,这点都是至关重要的。
2、硬功夫(专业能力)和软实力(情商)都很重要。
3、要善于记录、分析和总结。针对测试,类似于经典bug出现的根本原因、复现方式、避免漏测的办法、改进建议等总结。B公司学到的好习惯,项目过程中遇到的issue(不仅仅是bug),都清清楚楚地记录在一个表格中,包括问题描述、rootcause、action、deadline、Owner等,便于追溯,后期做Lesson learn的素材来源。
4、以小见大。出现一个bug,不要仅仅局限于这个bug,要多思考问题出现的原因,是流程出现问题了呢?还是其他原因?是不是可以优化流程来避免以后此类问题的发生呢?这样,解决一个问题相当于解决了一类问题。所以要多思考、多提建议。
5、趁自己还年轻,合理利用空余时间充电。一个人下班的时间,决定了他的高度;一个人如何使用空闲时间,决定了他能走多远。“赠人玫瑰手留余香”!我也想做你们测试发展道路上的人生导师,把我的经验分享给大家,帮你们更好的突破自己,提高自己!
绵薄之力
做为一名八年老测试,接下来我想分享一下这些年来,我对于技术一些归纳和总结,和自己对作为一名高级测试者需要掌握那些技能的笔记分享,希望能帮助到有心在技术这条道路上一路走到黑的朋友!
下面分享我整理的这份2023年可能是最全的软件测试工程师发展方向知识架构体系图。
1、Python 编程与测试开发技术
2、Web自动化测试基础
3、APP自动化测试基础
4、Postman测试工具专题
5、接口自动化测试基础
6、自动化框架封装
7、持续集成
8、Jmeter 性能测试
9、APP性能测试
10、Fiddler 抓包工具的使用
11、TCP/IP协议详情
12、计算机操作系统
13、Linux 系统操作
14、MySQL 数据库
15、RobotFramework 自动化测试框架
16、跨平台的自动化测试框架
上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。
可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
绵薄之力【资源分享】
最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】
这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享~
相关文章:

毕业四年换了3份软件测试工作,我为何仍焦虑?
今天一看日历:2023.2.11 ,才突然意识到自己毕业已经四年了。四年时间里一直在测试行业摸爬滚打,现在是时候记录一下了。 下面我来分享下我这4年软件测试经验及成长历程,或许能帮助你解决很多工作中的迷惑。 01、我是如何开始做…...
嵌入式C基础知识(7)
是否可以传递任何参数并从 ISR 返回值不可以。不能传递任何参数并从 ISR 返回值。 ISR 不返回任何内容,并且不允许传递任何参数。 当硬件或软件事件发生时调用 ISR,而代码不会调用它。 这就是为什么不向 ISR 传递参数的原因。 由于代码不调用 ISR&#x…...

大数据系列之:安装pulsar详细步骤
大数据系列之:安装pulsar详细步骤一、Pulsar版本和jdk对应关系二、安装JDK三、设置和激活jdk环境变量四、下载和解压Pulsar五、查看Pulsar目录六、启动Pulsar standalone cluster七、创建Kafka Topic八、往Topic写入数据九、消费pulsar的Topic一、Pulsar版本和jdk对…...

色彩-基础理论
颜色三大指标 色相 色相是颜色的一个属性,只有黑白灰没有色相这个属性(那银灰色是什么?) 颜色的相貌,指的也是给颜色一个名字 例如:暗红、酒红、土黄、墨绿 饱和度 颜色的鲜艳程度 纯度 饱和度主要取决于含色成分和消色成分&a…...

1629_MIT_6.828_xv6_chapter1操作系统的组织
全部学习汇总:GreyZhang/g_unix: some basic learning about unix operating system. (github.com) 这一次整理一下操作系统组织相关的知识,主要还是xv6教学操作系统相关的知识。当然,很多知识在这类技术领域是通用的。 1. 操作系统的主要功能…...

基于Golang哈希算法监控配置文件变化
SHA(secure hashing algorithm)表示安全哈希算法.SHA是MD5的修正版本,用于数据摘要和认证。哈希和加密类似,唯一区别是哈希是单项的,即哈希后的数据无法解密。SHA有不同的算法,主要包括SHA-1, SHA-2, SHA-256, SHA-512, SHA-224, …...

关于一笔画问题的一些思考(欧拉路Fleury算法、逐步插入回路法、以及另一种可能的解法)
前言这是一个经典的图论问题了最近复习离散的时候又恰好看到了,发现自己以前的解法似乎有点bug然后开始出反例卡自己,结果发现卡不掉?然后再好好想了想,发现这个看起来有问题的做法可能确实没问题。注意:欧拉路、欧拉回…...

vlookup怎么用详细步骤,看这一篇就够了
1、vlookup函数:使用方法 以下便是vlookup函数,功能、语法和参数用法: excel函数vlookup 2、vlookup函数:查询参数 首先,选中F2单元格,然后在编辑栏输入函数公式:VLOOKUP(E2,B&…...

雅思经验(9)之小作文常用词汇总结
写作:关于趋势的上升和下降在小作文中,真的是非常常见的,所以还是要积累一下。下面给出了很多词,但是在雅思写作中并不是词越丰富,分数就越高的。雅思写作强调的是准确性:在合适的地方用合适的词和句法。不…...
【Python语言基础】——Python NumPy 数组创建
Python语言基础——Python NumPy 数组创建 文章目录 Python语言基础——Python NumPy 数组创建一、Python NumPy 数组创建一、Python NumPy 数组创建 创建 NumPy ndarray 对象 NumPy 用于处理数组。 NumPy 中的数组对象称为 ndarray。 我们可以使用 array() 函数创建一个 NumP…...
【大数据】Hadoop-Kms 安装及相关详细配置,看完你就会了
简介 Hadoop KMS是基于Hadoop的KeyProvider API的加密密钥管理服务器,它提供了使用REST API通过HTTP进行通信的客户端和服务器组件。 客户端是一个KeyProvider实现,使用KMS HTTP REST API与KMS交互。 KMS及其客户端具有内置的安全性,它们支…...
SpringCloud分布式框架
SpringCloud分布式框架 SpringCloud框架 Spring Cloud 是一个用于创建分布式系统的开源框架。它基于 Spring Boot 和 Spring Framework,提供了一整套关于分布式系统的工具和技术。 Spring Cloud 是微服务架构的一种实现方式,它提供了一整套完整的技术…...
Csss属性display,visibility区别,对渲染页面的影响
display: none; 与 visibility: hidden; 的区别 相同: 它们都能让元素不可见 区别:display:none;会让元素完全从渲染树中消失,渲染的时候不占据任何空间; visibility: hidden;不会让元素从渲染树消失,渲染时元素继续…...

怎么给笔记本电脑外接两台显示器?
我们在办公室会看见不少同事的电脑不止一台显示器,多屏确实可以提高工作效率。有的游戏党也会选择给电脑外接显示器,带来绝佳的体验。 不过要怎么把将外部显示器连接到笔记本电脑上?驱动人生在这里教给大家给笔记本外接显示器的做法。 一、…...

生成树协议 — STP
目录 一、环路的出现 1、广播风暴: 2、MAC地址表翻滚: 二、生成树 1、定义: 2、生成树使用的算法: 三、802.1D 1、BPDU: 2、TCN—拓扑变更消息(也是BPDU): 3、部分名词&am…...

git必会的知识点
注:本文参考https://www.liaoxuefeng.com/wiki/896043488029600 原文非常值得一读,作者学识渊博,补充了很多有意思的知识。我仅仅是拾人牙慧。 git是最先进的分布式版本控制系统。 版本控制系统——自动记录系统中文件的改动情况࿰…...

【hello, world】计算机系统漫游
文章目录hello程序信息就是位 上下文程序被其他程序翻译成不同的格式预处理阶段编译阶段汇编阶段链接阶段了解编译系统如何工作是大有益处的优化程序性能理解链接时出现的错误避免安全漏洞处理器读并解释储存在内存中的指令系统的硬件组成总线I/O设备主存处理器运行hello程序高…...

1. SpringMVC 简介
文章目录1. SpringMVC 概述2. SpringMVC 入门案例2.1 入门案例2.2 入门案例工作流程3. bean 加载控制4. PostMan 工具1. SpringMVC 概述 SpringMVC 与 Servlet 功能等同,均属于 Web 层开发技术。SpringMVC 是 Spring 框架的一部分。 对于 SpringMVC,主…...
《解谜三星堆:开启中华文明之门》-范勇 笔记
甲篇 应重视民间流传的疑似三星堆的文物,对其展开充分的研究,以发现更多关于三星堆的秘密,并且避免“敦煌窘境”,让我国的三星堆学术研究处于世界领先地位!(书中就讲到了在民间首次发现了圆形玉器…...

锐捷(十四)mpls vxn optionc的关键问题所在和具体问题分析
用锐捷的设备搭建mpls vxn optionc的基础版和带RR的版本,在控制平面和转发平免上分析mpls vxn optionc的关键问题所在和具体问题分析。一 基础mpls vxn optionc:核心:两pe之间之间建立MP EBGP邻居,从而直接传递路由解放了ASBR。关…...

【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...

STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...

[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...

高等数学(下)题型笔记(八)空间解析几何与向量代数
目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...
Device Mapper 机制
Device Mapper 机制详解 Device Mapper(简称 DM)是 Linux 内核中的一套通用块设备映射框架,为 LVM、加密磁盘、RAID 等提供底层支持。本文将详细介绍 Device Mapper 的原理、实现、内核配置、常用工具、操作测试流程,并配以详细的…...

GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...

网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...