年薪30W+,待遇翻倍,我的经历值得每个测试人借鉴

在这里插入描述
从自考大专到出走公司,从半年无业露宿深圳北站,从8k…到11.5k…再到20k,我的经历值得每个测试人借鉴 或许学历并没有那么重要

12年高考之后,在朋友的介绍下(骗了过去),没有好好的读大学,走的自考这条路。

当时他告诉我按照他的办法,可以上武大,只是过程有点点复杂,自考大专,在一所和武大有合作的野鸡大专获得学历之后,再通过自考去读武大,获取武大的毕业证。

在这里插入图片描述

前前后后花了5年的时间,自考大专学的是地质工程,自考本科选的是行政管理,是两种完全不搭的学科。 那些日子给我的感觉就是很坑很迷,无时无刻不在想着什么时候才能结束。毕业后我也没有从事相关的工作,更让我觉得那段日子是不值得的

比赚大钱更重要的,是你的定位和方向

在大学毕业之后,我没有犹豫的去了深圳,虽然不知道干嘛,但当时年轻气盛的,始终觉得在大城市会有更广阔的空间施展。

当时也没有继续再管家里要生活费,城市很大,工作机会很多,但我自己当时真的太迷茫了,一直没有找到自己的定位与方向,一直在适应着这个社会,这段适应的过程花了我整整大半年的时间。

就当时整整大半年的时间,都处于无业的状态,当时身上也没钱、没有地方住,经常就在深圳北站、肯德基这种地方过夜。

时时刻刻知道现在的处境并不是自己想要的,试过很多方法去改变,但真的好难,难在无从下手。

关于怎么走上测试这条道路,说来有点戏剧性,当时就是在百度搜索“怎么赚大钱”,弹出来了关于测试行业的广告,经过一番了解就开始了自学测试,真的是因为穷,然后又想赚大钱。后来一番自学就简单入了行。有里目标之后,每天都干劲十足,这行业给我感觉是“入手简单”,像我这没有任何经验的人也能快速掌握这门技术。

当时自学完就去移动做外包去了,有点神奇,突然一下就进了大厂,后来平复了心情,干了一年半之后,对当时的薪资8K,有点不是很满意,所以我又去百度了一下“测试怎么加薪”,然后了解到了自动化测试…

学习比工作实践,能更快提升

于是我有了新的方向:自动化,我又开始上网买资料,找视频,给自己制定学习计划,经常下班回家,晚上学习,到凌晨才能完成自己的计划,那段时间也感觉自己进步神速,感觉能很快成为大神那种,有很多内容是我在工作实践过程中,摸索不到或者是要走很多弯路才会发现的。

自学完我就跳槽了,新公司给我报了11.5K,我当时就直接去了,后来自己在做项目的时候,也暴露了自己的短板:不会测开, 但是作为一个自学上来的我,想要学习测试开发还是特别困难,遥远的,还好公司内的大佬愿意指点我,时不时的给我一些资料和给我讲测开的学习框架。

学习测开的过程中,也是学习欲望很强烈,当时就是一个想法:更好满足项目的需求,让自己更值钱,学完测开之后,我并没有去“匆匆上阵”,选择了半年的时间去巩固,去反复看录播学习,并一直在实操。

后来又留下干了1年多,晋升机会十足是渺茫,就一直在留意跳槽的事,最后也收到了一份20K的offer就直接去了,但由于工作原因,就不能在这里和大家分享了。

关于以后,打算朝测开、架构或者是管理的方向发展,未来的规划,最重要的是自己的定位,才能让自己有个方向去努力靠近。

最后也分享一下我的学习路线

1、软件测试基础知识

学习目标:对软件测试整理的测试流程有清晰的概念,了解软件测试到底是做什么的,软件测试的各种专业术语是什么意思,以及多种不同的软件测试类型区分,测试用例的作用、本质以及如何撰写,测试报告、缺陷管理、常见的软件测试工具(selenium|Postman|禅道的认识)等等…

① 软件测试概念:常见的软件测试类型、软件测试的概念掌握、软件质量模型等等;

② 测试用例:明白测试用例如何设计,测试用例的系统化设计原则,常见的几类测试用例设计方法(因果图法、场景法、正交表法、边界值法、等价类方法等等);

③ 缺陷管理:正确掌握何谓“缺陷”,常见的缺陷判定方法,缺陷报告的撰写方法,缺陷如何系统性的跟踪和维护等等;

④ Web项目实战:基础的Web测试项目实战,通过实战了解和掌握基础的软件测试流程、测试项目分析、测试计划和测试方案的设计等等;

⑤ App项目实战:掌握和了解APP的测试方法,Android、IOS、鸿蒙等不同系统的测试解决方案,Adb的应用等等;

⑥ 测试管理工具:禅道、Testhub、Jira等不同测试工具的特性和优劣,以及测试管理工具的应用场景和原理等等;

2、计算机基础知识

学习目标:主要掌握计算机的系统基础原理(内存信息、运作原理、Linux操作系统命令)、测试的基本理论知识、前端方面的基础知识(HTML+CSS+JavaScript)等…

① 计算机基础:掌握和熟悉计算机的组成部分(CPU、GPU、内存等等)、常用的Dos命令等;

② 测试理论:软件测试的目的和最终定义,软件测试的术语系列、软件产品的基本测试流程和系统化的测试模型;

③ HTML基础:HTML标记语言的基本语法和结构、CSS和DIV层及网页样式的概念,熟悉和掌握常见的HTML标签语法和作用,以及JavaScript语言的基础语法和应用;

④ Linux系统:掌握Linux系统的安装和操作,Linux终端的各类常见命令的作用(文件操作命令、用户权限管理命令、应用安装和升级的命令)、Docker的安装和使用、以及常见的Linux远程连接方式和方法,其次还要掌握Vi编辑器的使用;

3、Sql数据库的学习

学习目标:掌握基本的sql语句的使用方法,以及常见的sql增删改查、聚合函数以及各类条件查询、子查询的命令。同时需要了解Sql数据库在诸如接口和性能测试中扮演的“角色”和意义…

① 数据库的基本概念:什么是数据库,数据库都有哪些类型;

② 数据库语法:学习掌握Sql语句的基本语法;

③ 数据库查询:学习和掌握多种数据库的查询方法,比如复杂查询、多表查询、条件查询等等;

④ 数据库索引:了解和掌握数据库索引以及数据库事务相关的概念;

⑤ 数据库客户端:常见的数据库客户端的使用方法,以及不同的客户端的优劣和应用场景;

4、编程语言学习

学习目标:对于软件测试工程师而言,想要在软件测试领域做的不错,就需要掌握至少一门编程语言。没有编程基础的我们建议选择Python,如果有一定编程语言基础的可以选择Java。但是Java入门周期和学习难度相对于Python要大一些,但是两者在市面上的应用领域其实差不多,Python在某些领域(人工智能、爬虫和数据分析)要更优于Java语言。所以测试猿大课堂的软件测试课程大纲,就是以Python语言为课标的…

① Python基础:学习和掌握Python语言的基础语法、Python的运行环境以及安装;

② Python数据结构:学习和掌握Python的几种数据结构,诸如基础数据结构(数字类型、字符串类型、数值运算、关键字参数等等)和组合数据结构(列表、字典、元组、集合、hash对象、内存数据结构地址等等);

③ 程序控制:学习和掌握Python语言中的异常处理、顺序/循环/判断/结构、逻辑运算等;

④ 函数:掌握和学习Python的函数运用、函数的定义和作用域等,内置函数和函数传参;

⑤ 面向对象:学习Python语言面向对象编程的特点,掌握对象编程的特色和优势,学习面向对象编程的底层逻辑及特殊方法;

⑥ 日志:学习掌握Python的日志格式、配置文件以及内置的占位符等等;

⑦ 测试框架:学习和掌握Python中的Unittest和Pytest两种常用的测试框架,两种框架本身可应用于单元测试,但更多的是用于编写自动化测试脚本【非常重要】;

⑧ 并发编程:和Java语言一样,Python有其独特的多进程、多线程、线程池、分布等并发编程,学员需要学习和掌握Python的并发编程的特色和方法;

⑨ 网络编程:学习和掌握TCP服务端和客户端的使用方法,学习Python对HTTP/HTTPS协议的响应,以及socket的编程基础;

5、接口测试

学习目标:学习和掌握接口测试的概念和原理。掌握HTTP/HTTPS协议的原理,学习和掌握Dubbox的接口测试方法和协议接口能力,主要掌握Postman的操作以及使用技巧…

① HTTP/HTTPS协议:学习和掌握HTTP/HTTPS协议的原理;

② 请求:学习和掌握常见的Get、Post请求;

③ Cookie:学习和掌握Cookie、Session的原理以及解决方案;

④ 接口相关:学习掌握接口的文档、接口的基本概念以及接口的测试用例编写,熟悉和掌握接口相关的Postman、Jmeter、SoapUI等测试工具的使用方法;

6、性能测试

学习目标:性能测试属于高端测试工程师需要掌握的技术,对技术要求也有一定的门槛。学习性能测试需要掌握系统架构、Loadrunner等常用的测试工具。学习系统化的测试思维和流程,掌握性能测试的设计与需求分析,以及编写测试脚本…

① 性能测试基础:学习和掌握性能测试的意义、性能测试的分类以及常见的性能指标概念的理解;

② 性能测试需求与设计:学习掌握性能测试的系统化需求分析、性能测试的场景设计;

③ 性能测试进阶:主要掌握性能测试的脚本编写原理与方法,以及监控测试执行的资源,学习性能调优、回归测试等相关的概念与底层逻辑;

③ 性能测试工具:深度掌握Jmeter和Loadrunner的拓展用法,学习性能测试的报告输出;

7、App自动化测试

学习目标:APP自动化测试,是当前软件测试行业中较为主流的测试技术。我们需要掌握APP测试工具Appium的使用,掌握常见的多系统(Android、IOS、鸿蒙)系统的测试APP方法,移动自动化测试环境的搭建…

① APP测试环境搭建:主要学习掌握Appium、模拟器、Adb、Desktop等测试环境搭建的必备知识,了解真机设备的调式模式,以及系统化的测试环境的搭建方法;

② Appium的使用:掌握Appium的元素定位(原生App元素定位、WebApp应用元素定位)与元素交互(常见的界面互动操作方法、元素的基本属性和页面等待)方法;

③ 测试框架封装:学习和掌握Appium集成、以及Adb工具的使用,了解移动App测试的深度应用(屏幕截图、异常处理、Appium日志解析等等);

8、持续集成和持续测试

学习目标:主要学习和掌握持续集成Jenkins、Git的环境部署,以及对应的系统化分支的学习,掌握Docker容器的部署和应用

① 版本控制Git:为什么需要版本控制,为什么是git,git的部署,git的分支结构,分支合并和冲突解决;

② 持续集成Jenkins:Jenkins的作用,enkins环境部署,基本的文件结构,Jenkins基本的使用以及插件的使用;

③ 容器Docker:Dockers的来源,docker镜像,容器;

机会只垂青有准备的人,这是一个靠本事的社会。有时候,你之所以发展得不好,不是因为没有机遇,而是因为你没有准备好,导致机遇与你擦肩而过。如果你想要学习,什么时候开始都不晚,而不是瞻前顾后,你只要用尽全力,剩下的交给时间!
在这里插入图片描述

最后想对你讲的话

一开始没能进大厂的朋友们,不代表以后不能进大厂,工作了几年之后,技术能力是可以得到提升的,但要想成为厉害的程序员,还是得去大厂。

如果你一直在小公司,可能会非常熟悉本公司的业务,凭此能在本公司混得风生水起,但技术上可能仅仅停留在增删改查。由于在大多数小公司里,未必能接触到高并发分布式,或大数据,或机器学习或深度学习之类的高级技能,所以如果在小公司待久了,可能接触到的也就是增删改查的技术。

如果你进入大厂,或者接触到诸如分布式,集群或者深度学习等技术的项目后,你才会学到一些高级的技能,但如果一直待在小厂,可能一直都不会有这种项目给你做。

我见过很多小公司的老程序员到了30多岁只能干焦虑,喜欢用 “以后只能送外卖了”这种玩笑话来放置自己的不安,年轻的时候不去争取进入更大的公司,上了年纪以后,脚下的余地自然捉襟见肘。

今天的分享就到这里,希望能对你有所帮助。

下面是一份配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
在这里插入图片描述
这些都可以以在公众号:伤心的辣条 ! 免费领取,还有一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中资料包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

学习不要孤军奋战,最好是能抱团取暖,相互成就一起成长,群众效应的效果是非常强大的,大家一起学习,一起打卡,会更有学习动力,也更能坚持下去。你可以加入我们的测试技术交流扣扣群:914172719(里面有各种软件测试资源和技术讨论)

喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!


好文推荐

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

面试官:工作三年,还来面初级测试?恐怕你的软件测试工程师的头衔要加双引号…

什么样的人适合从事软件测试工作?

那个准点下班的人,比我先升职了…

测试岗反复跳槽,跳着跳着就跳没了…

Guess you like

Origin blog.csdn.net/AI_Green/article/details/121705351