测试从外包到自研再到大厂,这5年鬼知道我是怎么过来的
18岁那年我背井离乡来到从来没有来过的郑州。在一所普通的二本院校里学网络工程。
很明显,在大学以前只会用电脑开关机打LOL的我恍然间只觉得自己来到了人间天堂,没有人管,也没有任何烦恼无忧无虑的过了三年大学生涯。
直到秋招的开始,我才慌了神。但就像道歉有用的话,要警察干嘛一样。临时抱佛脚并没有挽救他的命运。
经历了无功而返的秋招跟春招后的我跌跌撞撞的过了论文坎跟清考坎顺利拿到了双证,离开这个学习(玩)了四年的地方,巨大的惆怅占据了我的心灵。
蜗居在朋友租的房子里的我被社会狠狠的上了一课,去北上广一线没底气,专业对口的工作要求根本找不到,整整两个月,面试通过的全是销售。
“先做着吧,从底层做起”
成为某某置业顾问的我内心还是有些许豪情的,虽然被三个月没有业绩只能拿3000底薪没有社保没有公积金老板无休止的画饼充饥每天上下班喊口号所失望过。
确实,三百六十行,行行出人才。得知三个月试用期已过,由于没有业绩被公司辞退的小A狠狠喝了一口酒。三千块在郑州只能招到应届大学生这句话他才明白不是句笑话。临近过年,第一次竟然害怕回去过年。站在天桥上看着下面的车水马龙,似乎那年的冬天格外冷

出乎意外,想象之中父母的责骂声并没有在年关时分响起,耳边只能听到母亲的关切话语跟父亲不时的叹息。我低下的头微微抬起,仿佛感觉爸妈真的老了。
我成长的速度一定要超过父母老去的速度。带着心底的执念,如同往年一样踏上了去郑州的火车。似乎,就跟那些让人热血的鸡汤一样。
只有我知道自己在那段时间有多拼。
我把目光放在了相对门槛较低,回报尚可,天花板很高的软件测试上。拾起了大学时候崭新的计算机基础,数据库。去研究测试理论测试基础测试流程,在网上看视频看资料。
而拼了命一样的我学习了三个月的结局是郑州的一家外包公司,月薪5k,做六休一,没有五险一金。
不是所有的努力都一定有结果,公主永远不会嫁给守护她的骑士一样,我在外包公司做了半年。深感薪资增幅真的跑不过通货膨胀,而且母胎solo的我意外却又不意外的收到了母亲的催婚。
压力仿佛潮水一般的压在了我这个刚过23生日的少年身上。
“行路难,行路难,多歧路,今安在?”
没一个成年人的生活中有容易两字,在外包半年基本就没有一天轻松的时候。无休止的加班,上线的时候更是没日没夜。冒烟测试,回归测试。一刻也不可以懈怠。
“你见过凌晨四点的郑州么,空无一人的空气全是清新,天边的远方隐隐约约亮着晨曦”
“外包公司跟自研公司的差距是鸿沟,只有越过去的人才真正懂”

所幸,在外包的这半年并没有荒废自己。自己的年纪越来越大,父母却越来越老。作为家中独子的我现在只想搞钱。
测试思维,测试用例,接口测试这些慢慢的熟悉了后,我将目光放在自动化上。
在繁杂的自动化测试工程岗位整理出,想要高薪,必须达到下面这些条件:
会一门编程语言,懂自动化测试,懂Appium操作,元素定位、操作、等待、滑动等,深入讲解PO、unittest、yaml、配置文件、测试报告等知识,基于关键字驱动、Pytest和jenkins持续集成完成App测试框架设计与开发、测试工具、比如性能测试工具loadrunner,自动化测试工具selenium、Appium。
从Python基础开始学起,前前后后学了差不多3个月后,毅然而然辞去了郑州的外包公司,去了自己一年前就想去却一直不敢去的上海。
“有志者,事竟成破釜沉舟百二秦川终属楚;苦心人,天不负卧薪尝胆三千越甲可吞吴。” 在这吴越之地,初步掌握了接口自动化的我在上海进了一份9K的自研公司,他信心满满,踌躇满志。
一直没想明白,为什么招聘软件上写的自动化测试工程师在实际工作中用到自动化测试的时候还不到10%。
与此同时,我也没想明白,为什么工资涨了,感觉自己生活水平质量依旧没有什么变化。每天六半起床,接近两个小时的通勤时间把我对上海的所有美好印象打了个支零破碎
“在学校会有人告诉你该怎么做,在社会上只有舐舔自己伤口的时候才明白”
在这个物欲横流的社会,拥有自己核心竞争力才能在任意公司立足。
从没有放弃学习的我经过三年的技术沉淀,中间也跳槽了两次,薪资一次也比一次高,从9k到12k再到16k。
16k!这是自己那个小县城不敢想象的数字。但是我知道,在上海,这只能说普通水平,别说房贷了,首付都要自己不眠不休不用的打十年工才有可能。
而自己似乎也到了瓶颈了,跳槽涨薪似乎也涨不动了。加上疫情,这一年的我似乎进入了迷茫期。所幸,这时候我在我当初学习加入的软件测试技术交流群里碰到一位大佬
他告诉我,我远远还没有触及行业天花板,在一线城市拿你这个薪资的自动化测试工程师一抓一大把,我现在不是自动化测试么,下一步就是写实现自动化测试的工具,框架。测试开发。
经过大佬的建议我辞掉了当时的工作选择沉淀自己,再次工作时进了杭州某大厂做测试开发,税前25k !
也许很多人跟我有一样的经历,虽然我算不上很成功,但也还算混得不错了(大佬轻点喷)。作为一个过来人,接下来我分享的软件测试学习路线以及学习资料能给一些不管是想转行做测试还是遇到瓶颈想突破的同学带来力所能及的帮助!有需要资料的同学可以点击文末小卡片加入我的软件测试技术交流群免费领取!
![]()
一、Linux必备知识
Linux作为现在最流行的软件环境系统,一定需要掌握,目前的招聘要求都需要有Linux能力。

二、Shell脚本
掌握Shell脚本:包括Shell基础与运用、Shell逻辑控制、Shell逻辑函数

三、互联网程序原理
自动化必经之路:前端开发基础知识以及互联网网络必备知识四、互联网程序原理

四、MySQL数据库
软件测试工程师必备MySQL数据库知识,不仅仅停留在基本的“增删改查”。

五、抓包工具
Fiddler,Wireshark,Sniffer,Tcpdump各种抓包工具适用于各种项目,总有一款适合你的

六、接口测试工具
接口测试神器,你绕不开的强大工具:Jmeter。小巧灵活:Postman

七、Web自动化测试Java&Python
了解自动化的目的,熟练掌握TestNG&unittest自动化框架,以及断言与日志处理

八、接口与移动端自动化
专业接口调用、测试解决方案。组建完整的web和接口自动化框架,Appium整体使用

九、敏捷测试&TestOps构建
揭开TestOps的神秘面纱,持续集成Jenkins框架烂熟于心

十、性能测试&安全测试
软件测试的彼岸:性能测试和安全测试,选个方向努力爬坑吧!

上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系在3-4年内完成这样一个体系的构建。
正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
未来的你一定会感谢现在拼命的自己!
最后:【可能给予你帮助】
这些资料,对于考虑【软件测试】技能进阶的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你,有需要的朋友点击下方小卡片进群免费领取!
相关文章:
测试从外包到自研再到大厂,这5年鬼知道我是怎么过来的
18岁那年我背井离乡来到从来没有来过的郑州。在一所普通的二本院校里学网络工程。 很明显,在大学以前只会用电脑开关机打LOL的我恍然间只觉得自己来到了人间天堂,没有人管,也没有任何烦恼无忧无虑的过了三年大学生涯。 直到秋招的开始&…...
Stable Diffusion系列(二):ControlNet基础控件介绍
文章目录 线稿提取类Canny:边缘检测SoftEdge:软边缘检测Lineart:精细线稿提取Scribble/Sketch:涂鸦提取MLSD:建筑领域的线条提取 3D提取类Normal map:法线贴图Depth:深度计算Segmentation&#…...
sql server数据库跟踪——SQL Server Profiler解析
工具: SQL Server Profiler这个工具是SQL Server数据库自带的语句执行跟踪工具,常使用于分析软件修改数据库时所执行的语句,适合用来研究软件运行数据库的原理。 打开方式: 本机安装了SQL server的话,都是自带的。直接…...
多机多卡分布式训练
1. 环境搭建 分布式训练框架:acceleratedeepspeedpdsh(可有可无)基础环境:cuda、显卡驱动、pytorch 1.1 安装相关包 cuda安装:参考官网安装步骤 wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-…...
打字练习软件 Type Fu mac中文版技能介绍
Type Fu mac是一款打字练习和提高打字速度的应用程序。它旨在帮助用户通过练习键盘打字,提高打字准确性和速度。无论您是初学者还是想要提高打字技能的专业人士,Type Fu都是一个很好的选择! Type Fu mac采用了一种互动,游戏化的方…...
我的云栖大会之旅:见证云计算创新的15年
云栖大会,曾经是一次不可思议的科技之旅,却如今已见证了我对云计算世界的15年关注和发展。第一次踏上云栖大会之旅,我记得是在2009年。那时的云计算还是一个新生事物,而云栖大会正是其中的奠基石。 我清楚地记得那个炎热的夏天&am…...
一个小技巧,显著提升大模型推理能力!加州大学提出MAF多反馈框架
作者 | 谢年年 最近,多篇文章《GPT-4的推理能力非常有限,有两篇论文为证》、《DeepMind:无法自我纠正推理,除非提前得知正确答案》指出大模型在推理任务中似乎没有自我改进的能力。即在无任何外部反馈的情况下无法通过自我纠正的形…...
测开 (Junit 单元测试框架)
目录 了解 Junit 引入相关依赖 1、Junit注解 Test BeforeEach、BeforeAll AfterEach && AfterAll 2、断言 1、Assertions - assertEquals 方法 2、Assertions - assertNotEquals 方法 3、Assertions - assertTrue && assertFalse方法 4、Assertions…...
ncurse编程指南
文章目录 0. 介绍1. Hello, Ncurse2. 初始化函数2.1 raw() 和 cbreak()2.2 echo()和noecho()2.3 keypad()2.4 halfdelay()2.5 初始化样例 3. 命名规范4. 输出函数4.1 addch()类函数4.2 printw()类函数4.3 addstr()类函数4.4 注意4.5 输出函数例子 5. 输入函数5.1 getch()5.2 sc…...
Graph U-Net Code【图分类】
1. main.py # GNet是需要用到的model net GNet(G_data.feat_dim, G_data.num_class, args) # graph, 特征维度,类别数,参数 trainer Trainer(args, net, G_data) #开始训练数据 # 正式开始训练数据 trainer.train()2. network.py class GNet(nn.Modul…...
PTA 秀恩爱分得快(树)
题目 古人云:秀恩爱,分得快。 互联网上每天都有大量人发布大量照片,我们通过分析这些照片,可以分析人与人之间的亲密度。如果一张照片上出现了 K 个人,这些人两两间的亲密度就被定义为 1/K。任意两个人如果同时出现在…...
文心一言4.0对比ChatGPT4.0有什么优势?
目录 总结 文心一言4.0的优势 文心一言4.0的劣势 免费分享使用工具 后话 生成式AI的困境 “不会问”“不会用”“不敢信” 为什么要出收费版本? 目前使用过国内的文心一言3.5和WPS AI,国外的ChatGPT4.0。 文心一言和其他国内产品相比࿰…...
美观且可以很方便自定义的MATLAB绘图颜色
函数介绍 主函数是draw_test,用于测试函数。 draw_h是函数,用于给Matlab提供美观且可以很方便自定义的绘图颜色。 draw_h函数介绍 这是一个带输入输出的函数,输入1/2/3,输出下面三种颜色库的配色,每种库均有五种颜色…...
基于jsp,ssm物流快递管理系统
开发工具:eclipse,jdk1.8 服务器:tomcat7.0 数据库:mysql5.7 技术: springspringMVCmybaitsEasyUI 项目包括用户前台和管理后台两部分,功能介绍如下: 一、用户(前台)功能: 用…...
陪诊系统|挂号陪护搭建二开陪诊师入驻就医小程序
我们的陪诊小程序拥有丰富多样的功能,旨在最大程度满足现代人的需求。首先,我们采用了智能排队系统,通过扫描二维码获取排号信息,让您从繁琐的排队过程中解放出来。其次,我们提供了多种支付方式,不仅可以实…...
恒驰服务 | 华为云数据使能专家服务offering之大数据建设
恒驰大数据服务主要针对客户在进行智能数据迁移的过程中,存在业务停机、数据丢失、迁移周期紧张、运维成本高等问题,通过为客户提供迁移调研、方案设计、迁移实施、迁移验收等服务内容,支撑客户实现快速稳定上云,有效降低时间成本…...
轻量级狂雨小说cms系统源码 v1.5.2 基于ThinkPHP5.1+MySQL
轻量级狂雨小说cms系统源码 v1.5.2 基于ThinkPHP5.1MySQL的技术开发 狂雨小说cms提供一个轻量级小说网站解决方案,基于ThinkPHP5.1MySQL的技术开发。 KYXSCMS,灵活,方便,人性化设计简单易用是最大的特色,是快速架设小说类网站首选…...
Leetcode刷题详解——Pow(x, n)
1. 题目链接:50. Pow(x, n) 2. 题目描述: 实现 pow(x, n) ,即计算 x 的整数 n 次幂函数(即,xn )。 示例 1: 输入:x 2.00000, n 10 输出:1024.00000示例 2:…...
计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP-项目实战
✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...
人工智能基础_机器学习011_梯度下降概念_梯度下降步骤_函数与导函数求解最优解---人工智能工作笔记0051
然后我们来看一下梯度下降,这里先看一个叫 无约束最优化问题,,值得是从一个问题的所有可能的备选方案中选最优的方案, 我们的知道,我们的正态分布这里,正规的一个正态分布,还有我们的正规方程,他的这个x,是正规的,比如上面画的这个曲线,他的这个x,就是大于0的对吧,而现实生活…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
AspectJ 在 Android 中的完整使用指南
一、环境配置(Gradle 7.0 适配) 1. 项目级 build.gradle // 注意:沪江插件已停更,推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
uniapp手机号一键登录保姆级教程(包含前端和后端)
目录 前置条件创建uniapp项目并关联uniClound云空间开启一键登录模块并开通一键登录服务编写云函数并上传部署获取手机号流程(第一种) 前端直接调用云函数获取手机号(第三种)后台调用云函数获取手机号 错误码常见问题 前置条件 手机安装有sim卡手机开启…...
Golang——6、指针和结构体
指针和结构体 1、指针1.1、指针地址和指针类型1.2、指针取值1.3、new和make 2、结构体2.1、type关键字的使用2.2、结构体的定义和初始化2.3、结构体方法和接收者2.4、给任意类型添加方法2.5、结构体的匿名字段2.6、嵌套结构体2.7、嵌套匿名结构体2.8、结构体的继承 3、结构体与…...
