年薪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镜像,容器;
我已经按照软件测试的学习大纲,我总结了一份针对0基础以及进阶到自动化测试/测试开发的视频教程,已经上传到网盘中,由易到难,非常全面,目前还在持续更新ing,需要的朋友下方可以自行领取。
相关文章:
年薪30W+,待遇翻倍,我的经历值得每个测试人借鉴
从自考大专到出走公司,从半年无业露宿深圳北站,从8k…到11.5k…再到20k,我的经历值得每个测试人借鉴 或许学历并没有那么重要 12年高考之后,在朋友的介绍下(骗了过去),没有好好的读大学&#x…...
DEB方式安装elastic search7以及使用
参考:https://www.cnblogs.com/anech/p/15957607.html 1、安装elastic search7 #手动下载安装 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.1-amd64.deb wget https://artifacts.elastic.co/downloads/elasticsearch/elastics…...
[Tomcat] [最全] 目录和文件详解
打开tomcat的解压之后的目录可以看到如下的目录结构: Bin bin目录主要是用来存放tomcat的命令,主要有两大类,一类是以.sh结尾的(linux命令),另一类是以.bat结尾的(windows命令)。 …...
微信小程序元素/文字在横向和纵向实现居中对齐、两端对齐、左右对齐、上下对齐
元素对齐往往是新学者的一大困惑点,在此总结常用的各种元素和文字对齐方式以供参考: 初始显示 .wxml <view style"width: 100%;height: 500rpx; background-color: lightgray;"><view style"width: 200rpx;height:100rpx;bac…...
兼容树莓派扩展模块,专注工业产品开发的瑞米派强势来袭
近日,米尔电子和瑞萨电子共同定义和开发了瑞萨第一款MPU生态开发板——瑞米派(Remi Pi)正式上市了!在各种Pi板卡琳琅满目的当下,Remi Pi是一款与众不同的开发板,他兼顾了严肃产品开发和爱好者创意实现两种需…...
云原生 - 微信小程序 COS 对象存储图片缓存强制更新解决方案
问题描述 遇到一个这样的情况:在微信小程序里图片缓存十分麻烦,网上很多说在腾讯云里的 COS 存储对象服务里设置对应的图片缓存(Header 头 Cache-Contorl),说实话真不好用,一会儿生效,一会儿没…...
设计公司设计ppt的优势—南京梵构广告
在这个时代的发展下,PPT软件越来越好用,投影仪越来越便宜,直接导致许多商界人士不再撰写文件了。他们只是在编写演示文稿,这些文稿只是些没有细节、缺乏支持的概要。许多人不喜欢撰写详尽文件所付出的脑力劳动。 视觉效果 一个好…...
gitlab设置/修改克隆clone地址端口
最近由于公司要停测试库云服务器? 什么?要停测试库服务器??? 是的! 你没听错。 真是醉了,多大的集团,为了省钱,也真是拼了, 作为开发人员,没有测试服务器,犹如断臂之人。 所以,在之前搭建环境的时候都没有写文档,今天算是弥补上,以后都可以作为参考了, …...
Jellyfin影音服务本地部署并结合内网穿透实现公网访问本地资源
文章目录 1. 前言2. Jellyfin服务网站搭建2.1. Jellyfin下载和安装2.2. Jellyfin网页测试 3.本地网页发布3.1 cpolar的安装和注册3.2 Cpolar云端设置3.3 Cpolar本地设置 4.公网访问测试5. 结语 1. 前言 随着移动智能设备的普及,各种各样的使用需求也被开发出来&…...
笨蛋学设计模式行为型模式-责任链模式【18】
行为型模式-责任链模式 8.5责任链模式:arrow_up::arrow_up::arrow_up:8.5.1概念8.5.2场景8.5.3优势 / 劣势8.5.4责任链模式可分为8.5.5责任链模式8.5.6实战8.5.6.1题目描述8.5.6.2输入描述8.5.6.3输出描述8.5.6.4代码 8.5.7总结 8.5责任链模式⬆️⬆️⬆️ 8.5.1概念 责任…...
【.NET Core】深入理解任务并行库 (TPL)
【.NET Core】深入理解任务并行库 (TPL) 文章目录 【.NET Core】深入理解任务并行库 (TPL)一、概述二、数据并行(任务并行库)三、Parallel.For 循环示例四、Parallel.ForEach 循环示例五、处理并行循环中的异常六、数据并行总结6.1 不要假定并行的速度始…...
win10安装redis并配置加自启动(采用官方推荐unix子系统)
记录,为啥有msi安装包,还这么麻烦的用linux版本redis的安装方式,是因为从github上下载别人制作的msi报毒,还不止一处,这种链接数据库的东西,用别人加工过的,都报毒了还用就是傻逼了。 所以采用…...
【大数据面试题】HBase面试题附答案
目录 1.介绍下HBase 2.HBase优缺点 3.介绍下的HBase的架构 4.HBase的读写缓存 5.在删除HBase中的一个数据的时候,它是立马就把数据删除掉了吗? 6.HBase中的二级索引 7.HBase的RegionServer宕机以后怎么恢复的? 8.HBase的一个region由哪些东西组成? 9.…...
SpringBoot中从HikariCP迁移到Oracle UCP指南
本博客文章的目标是作为从 HikariCP 和Oracle UCP(通用连接池)迁移的指南,因为它是连接到Oracle 数据库时的推荐方法。 HikariCP 简介 HikariCP是与 Spring Boot 应用程序一起使用的 JDBC 连接池。 简而言之,从 Java 开发人员的…...
第3章 接口和API设计
第15条:用前缀避免命名空间冲突 OC没有其他语言那种内置的命名空间机制。因此,我们在起名时要设法避免潜在的命名冲突,否则很容易就重名了。若是发生重名冲突,那么应用程序相应的链接过程就会出错。例如: 错误原因在…...
HBase入门:实现原理
文章目录 说明HBase的实现原理HBase功能组件表和 RegionRegion 的定位 说明 本文参考自林子雨老师的《大数据技术原理与应用(第三版)》教材内容,仅供学习和交流 HBase的实现原理 HBase功能组件 HBase 的实现包括 3 个主要的功能组件:库函数ÿ…...
Redis入门到实战-基础篇+实战篇+高级篇+原理篇
Redis入门到实战-基础篇实战篇高级篇原理篇 文章目录 Redis入门到实战-基础篇实战篇高级篇原理篇一、基础篇二、实战篇三、高级篇四、原理篇 一、基础篇 1.基础篇笔记:https://blog.csdn.net/cygqtt/article/details/126974142 二、实战篇 1.实战篇笔记:…...
redis 工具类
在Spring Boot项目中,Redis是一个常用的分布式缓存解决方案。下面展示的RedisCache工具类封装了对Redis进行基本操作的方法,包括存储和获取各种类型的数据、设置过期时间以及处理集合类型的缓存。 /*** redis 工具类***/ SuppressWarnings(value { &q…...
焕新升级,不同以“网” | AnyCase客户端全新上线
升级啦~ 2024年1月23日 箱讯AnyCase官网全新改版上线! 全球贸易All in One集成平台 集物流服务、外贸服务、供应链金融服务、企业风控服务、碳中和服务于一体 添加图片注释,不超过 140 字(可选) 优化首页布局→体验升级 此次…...
导出 MySQL 数据库表结构、数据字典word设计文档
一、第一种 :利用sql语句查询 需要说明的是该方法应该适用很多工具,博主用的是navicat SELECT TABLE_NAME 表名,( i : i 1 ) AS 序号,COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIMUM_LENGTH 长度, IS_NULLABLE…...
conda管理python安装包与虚拟环境的相关命令汇总
conda的简单介绍 Anaconda,是一个开源的Python发行版本,包含了conda、Python以及一大堆安装好的工具包及依赖项。 conda是Anaconda中的一个开源的、Python包和环境的管理工具,包含于Anaconda的所有版本当中。因此使用conda需要先安装Anacon…...
Vue3引用echart5 报错解决
一、TypeError: Cannot read properties of undefined (reading type) 原因:由于把echart实例绑定到了一个响应式的变量上 解决方案 【1】使用markRaw 把响应式变量定为非响应式变量 import { markRaw } from vue; export default {data() {return {chartConta…...
浅析HTTP协议
首先,前端请求后端数据,后端响应数据给前端,这是我们大家都知道的,那其中所涉及到的数据传输协议又是什么呢?这个传输规范就是我们大名鼎鼎的HTTP协议! 什么是HTTP协议? HTTP(超文本…...
etcd未授权到控制k8s集群
在安装完 K8s 后,默认会安装 etcd 组件,etcd 是一个高可用的 key-value 数据库,它为 k8s 集群提供底层数据存储,保存了整个集群的状态。大多数情形下,数据库中的内容没有加密,因此如果黑客拿下 etcd&#x…...
制作一个简单的HTML个人网站
在当今数字化的世界里,拥有一个个人网站已经成为了展示个人品牌、分享作品和信息的必备工具。虽然有各种复杂的内容管理系统(CMS)和平台可以帮助我们快速搭建个人网站,但对于初学者或者想要了解更多技术细节的人来说,从…...
头歌C语言字符数组
目录 第1关:字符逆序 任务描述 相关知识(略) 编程要求 测试说明 第2关:字符统计 任务描述 相关知识(略) 编程要求 测试说明 第3关:字符插入 任务描述 相关知识(略) 编程要求 测试说明 第4关:字符串处理 任务描述 相关知识(略)...
【mongoDB】文档 CRUD
目录 1.插入文档 批量插入: 2.查询文档 3.更新文档 4.删除文档 deleteOne() deleteMany() findOneAndDelete() 1.插入文档 可以使用 insert () 方法或者 save() 方法向集合中插入文档 语法如下: db.collection_name.insert(document) collectio…...
每日一题——LeetCode1337.矩阵中战斗力最弱的K行
方法一 个人方法 排序 题目要求就是找出每行有多少个1,根据每行1的个数进行排序,但是是把每行在数组中的位置索引进行排序,并返回前k项 所以先统计每行1的个数,并将数组转化为[index,count]就是索引加个数的数组形式,…...
docker指令存档
目录 Docker 1、概念 2、架构图 3、安装 4、Docker怎么工作的? 5、Docker常用命令 帮助命令 镜像命令 1、查看镜像 2、帮助命令 3、搜索镜像 4、拉取镜像 5、删除镜像 容器命令 1、启动 2、查看运行的容器 3、删除容器 4、启动&停止 其他命令…...
Pandas ------ 向 Excel 文件中写入含有 multi-index 和 Multi-column 表头的数据
Pandas ------ 向 Excel 文件中写入含有 multi-index 和 Multi-column 表头的数据 引言正文 引言 之前在 《pandas向已经拥有数据的Excel文件中添加新数据》 一文中我们介绍了如何通过 pandas 向 Excel 文件中写入数据。那么对于含有多表头的数据,我们该如何将它们…...
上海广告公司官网/网站优化排名哪家好
C#中点击关闭按钮时不关闭窗体,而是隐藏窗体 如何实现? 重写窗体的FormClosing事件,加入处理函数. private void Form1_FormClosing(object sender, FormClosingEventArgs e) { this.Hide(); e.Cancel true; }...
江苏网站建设渠道/汉中网络推广
涉及的知识点 css实现元素背景色从左侧滑动到右侧 :root、var原声JS操作class 介绍 展示由若干个节点组成的步骤进度条,可以进入上一节点或者返回上一节点,切换时相应节点样式会发生改变。 代码 html: <div id"step-container">&…...
azure网站建设/上海抖音推广
一、TensorFlow简介 TensorFlow是由谷歌开发的一套机器学习的工具,使用方法很简单,只需要输入训练数据位置,设定参数和优化方法等,TensorFlow就可以将优化结果显示出来,节省了很大量的编程时间,TensorFlow的…...
软件园二期做网站的公司/外贸seo优化公司
oracle 中的常量和变量:变量:通过变量,可以把需要的参数传递进来,经过处理后还可以把值传出去,最终返回给用户。常量:常量是代码中固化的信息,常量的值从定义开始就是固定的。常量主要用于为程序提供固定和…...
石家庄高端网站开发/百度提交入口网站网址
为什么80%的码农都做不了架构师?>>> Seagull是由小米工程师陈迪豪发布的开源docker容器和镜像的web界面监控工具,目前在https://github.com/tobegit3hub/seagull维护 下载镜像 docker pull tobegit3hub/seagull启动镜像 docker run -d -p 10…...
如何建立营销网络/seo sem优化
1、下载和安装maven工具 https://maven.apache.org/download.cgi 下载解压,修改conf下的setting.xml,优先从阿里云镜像拉取关联包 <mirrors><!-- mirror| Specifies a repository mirror site to use instead of a given repository. The repository that| this mi…...