前情提要
我的第一份工作就是拿的8000多,主要以功能测试为主。我用了大概6年的时间,成为了年薪40W的测试开发。回顾我从功能测试到测试开发的成长路径,基本上是伴随着“3次能力飞跃”实现的。
第一家入职的时候是一家小公司
刚开始入行的时候,什么也不懂,就是从最简单的手工测试做起。每天做的最多的就是:编写测试用例>提交bug>回归bug。
最开始的时候不懂这些,觉得有所收获,但是3个月后,这些事情搞熟悉了,会有一种浪费时间的感觉。另外在每次提交bug的时候,都要确认环境,还有一些bug没法复现,一方面老是被开发怼,另一方面也不得不加班。这个时候我就想,能不能不让开发怼,能不能不加班?
第一次能力飞跃
首先是看需求文档,只有了解了需求,才能知道设计这个功能的目的是什么,进而才能判断这个问题是不是bug,这样做后,一定程度上减少了被开发怼的情况,即使是开撕,也有了一定的依据;
其次就是看开发的设计文档,当然开始不熟的时候可能不给您看。你去研究他的业务逻辑,才能大致判断这个bug是如何产生的,进而能够复现和定位bug。
当然,这个过程肯定不是那么顺利。
第一是因为你要主动学习和研究超出能力的事情,必须沉下心来钻研;
第二是刚开始接触这些新事物的时候,处理问题会不那么完美,要扛得住质疑的压力;
第三是向开发请教或者讨论的时候,必然要面对开发的鄙视和冷漠;
第四就是学习会占用你的大量时间,加班不可避免。
这个过程可能1-2年,之后你就能自己排查和定位问题,提交bug之后开发也不再找你了,产品和开发开始对你刮目相看。
在找到的做测试的认同感,坚定了朝着测试持续发展的时候,我又觉得每天的重复性工作太多,能不能提升一下效率,于是我开始研究自动化。
第二次能力飞跃
先从学一门语言开始,Java或者Python都行,开始时为了入门更容易,建议先从Python入手。掌握了语言,就可以开始编写一些脚本或者测试工具来提升效率了;
然后去研究架构,从更高的层面去提升效率,可能这个阶段你还达不到设计架构的高度,但是你要往这个方向去思考,要有这个野心。
这个阶段,大概需要2年左右的时间,如果这个阶段你完成了,你才能称得上一名合格的测试工程师,月薪15-20k以上是稀松平常的事情。话说我过了这个阶段已经跳槽了,因为第一家公司团队和业务都太小,自己已经没有太多的成长了。而这个时候,我的薪资达到了25k。
再往后,我又不满足了,不是不满足薪资,而是不满足仅仅提升效率,而是想要更早的预测缺陷以及监控缺陷,这个时候就开始往测试开发的方向去进阶。
第三次能力飞跃
通过“测试左移”,提前与开发人员一起制定测试计划,推动代码评审、代码审计、单元测试、自动化冒烟测试、测试精准化分析以及研发自测等来保证研发阶段的质量;
另外,参与配置部署,将自动化测试用例配置到持续交付链中,并通过“测试右移”,全流程监控发布后的应用质量。
这里我所说的“测试左移”,也就是指的研发阶段的质量保证,“测试右移”也就是发布后的质量监控。搞定了测试开发,以我的经验来看,要去大厂,小公司用不到这个,薪资也给不起。测开目前在北京来说,年薪40W+只能算还行吧!
最后再次奉上500G软件测试教程资料,包括用例模板、计划模板、报告模板、性能调优、自动化教程、测开模板、简历模板、面试技巧、大厂真题等,一定有你需要的!【点击文末小卡片免费获取】
全网首发-涵盖16个技术栈
第一部分:测试理论(测试基础+需求分析+测试模型+测试计划+测试策略+测试案例等等)
第二部分:Linux( Linux基础+Linux练习题)
第三部分:MySQL(基础知识+查询练习+万年学生表经典面试题汇总+数据库企业真题)
第四部分:Web测试
第五部分:API测试
第六部分:App测试
第七部分:管理工具
第八部分:Python基础(Python基础+编程题+集合+函数+Python特性等等)
第九部分:Selenium相关
第十部分:性能测试
第十一部分:LordRunner相关
第十二部分:计算机网络
第十三部分:组成原理
第十四部分:数据结构与算法
第十五部分:逻辑题
第十六部分:人力资源
一、 测试基本功
测试入门(基础概念与常识)
需求分析
测试模型
测试计划
计算机网络......
二、 linux
grep和find的区别? grep 都有哪些用法?
查看IP地址?
创建和删除一个多级目录?
在当前用户家目录中查找haha.txt文件?
如何查询出tomcat的进程并杀掉这个进程,写出linux命令?......
三、MySQL
你用的Mysql是哪个引擎,各引擎之间有什么区别?
如何对查询命令进行优化?
数据库的优化?
Sql注入是如何产“生的,如何防止?
NoSQL和关系数据库的区别?
MySQL与MongoDB本质之间最基本的差别是什么?.....
四、Python编程
统计python源代码文件中代码行数,去除注释,空行,进行输出?
python调用cmd并返回结果?
1,2,3,4 这4个数字,能组成多少个互不相同的且无重复的三位数,都是多少?
请用 python 打印出 10000 以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221 等)
给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数......
五、Web测试
Web测试和app测试区别?
WEB测试环境搭建和测试方法
WEB测试教程
WEB测试要点及基本方法......
六、 APP测试
App 稳定怎么做的? Monkey怎么用p (App 稳定测试 )?
App 弱网测试怎么做的?......
七、接口测试
什么是接口?
如果模块请求http改为了https,测试方案应该如何制定,修改?
常用HTTP 协议调试代理I具有什么?详细说明抓取HTTPS协议的设置过程?
描述TCP/IP协议的层次结构,以及每一-层中重要协议?
接口产生的垃圾数据如何清理?
依赖第三方的接口如何处理?......
八、LordRunner
LordRunner的工作原理是什么?
......
九、必会工具(selenium+jmeter)
如何开展自动化测试框架的构建?
如何设计自动化测试用例?
webdriver如何开启和退出一个浏览器?
什么是自动化测试框架?
Selenium是什么,流行的版本有哪些?
你如何从命令行启动Selenium RC?
在我的机器端口4444不是免费的。我怎样才能使用另一个端口?......
十、性能测试
你认为性能测试的目的是什么?做好性能测试的工作的关键是什么?
服务端性能分析都从哪些角度来进行?
如何理解压力测试,负裁测试以及性能测试?
如何判断是否有内存泄漏及关注的指标?
描述软件产“生内存泄露的原因以及检查方式。(可以结合- 种开发语言进行描述)......
十一、面试指南
1.逻辑题
2人力资源题
上面资料包括测试理论、Linux基础、MySQL基础、Web测试、接口测试、App测试、Python基础、Selenium相关、性能测试、LordRunner相关等,全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!
资源获取方式: