突破自己的技术瓶颈并不是一蹴而就,还是需要看清楚一些东西,这里也有一些经验和见解跟大家分享一下。同样是职场人士,我也有我的经历和故事。在工作期间,我有过2年加薪5次的小小“战绩”(同期进入公司的员工,加薪不超过2次的员工大有人在),7年的时间顺利地从功能测试工程师做到了测试开发,是公司所有员工中成长最快的,也是幸运的,避开了一些坑,少走了很多弯路。但是我敢肯定,在看到这篇文章的人里面,肯定有人比我更优秀。但是对于那些更渴望得到突破和成长的朋友们来说,我把自己以往的成长经验心得分享出来,希望能帮到大家。
由于篇幅过长,我将文章分为下面4个部分来描述
一、我是如何入行软件测试?并且从事所谓的"点点点"
二、我是如何从功能测试进阶自动化测试?并且拿到了人生的一份14k的offer
三、从自动化测试进阶测试开发,拿到了28k的高薪(基本人生颠峰)
四、总结的一点工作经验
一、我是如何入行软件测试?并且从事所谓的"点点点"
2012年毕业于一所普通本科,大学专业是土木工程,毕业也是不出意外的来到了工地,从事的是一份监工的工作,就是工地上带白帽子的,每个月拿着4000块钱的工资,加上工地环境差,我还是放弃了这份工作!吃不了苦的真是不建议学习土木工程专业。后来转行也犹豫了很久,最后选择了软件测试行业,我也是通过市面上的培训机构,培训了3个月的时间入职成功,相信大多数转行人,都是通过培训才顺利入行的。
入行软件测试具体需要学习那些内容呢,下面一 一列出来
月薪5-9k,刚刚入行,先学会功能测试!
可能你是刚毕业的学生,也可能你是打算转行进入软件测试这个行业,那么首先以下基本的理论你是必须要掌握的:
软件测试的定义、生命周期、工作流程、需求分析;
测试用例的设计、编写、评审;
bug的基本知识以及禅道的使用;
测试计划、测试报告的编写;
SVN、Git版本控制工具的使用;
搞定上上面的这些基本必备内容,就已经知道可以做具体的实战内容,这个时候最好是先找一个web测试项目去做一下,假如一个项目拿到手之后,按照下面的一套流程跑一遍:
发布项目进行立项,建立项目组进行分工;
需求评审,学会如何看需求文档,进行需求分析,罗列测试点;
整理测试点,编写测试用例,然后进行用例评审;
执行测试,比如功能、界面、前后台、兼容性、数据库,对于发现的bug提交到禅道;
分析、总结、编写测试报告;
这个流程完整的跑一遍之后,只能说对于整体的测试流程算是掌握了,但是仍然不足以找到一份合适的工作,想要学会做功能测试,以下的内容也是必须掌握的:
Linux、数据库、接口测试、APP测试等
OK,搞定了这些,恭喜你已经可以投出你的简历去寻找一份测试的工作了!
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036
二、我是如何从功能测试进阶自动化测试?并且拿到了人生的一份14k的offer
转眼时间,我已经从事了3年初级测试工程师,2015年5月份开始我已经准备好进阶自动化测试,大概是花了四个月的时间进阶自动化,10月份涨薪到了14k,具体的学习路线我也列了一份出来,现在和大家一一讲述
1.自动化测试的类型
什么可以自动化?实际上很多,但是通常容易误解这个问题。
有两个主要类型,功能性和非功能性:
- 功能性:测试软件的实际业务应用程序。
- 非功能性:用于测试软件的其余要求(例如性能,安全性,数据存储等)。
性能测试主要是使用测试工具,Loadrunner、Jmeter等,对软件进行压力测试、负载测试、强度测试等等,因为这些无法用手工进行代替,所以必须自动化。 自动化功能测试:包括单元测试、接口测试、UI测试。主要是编写代码、脚本,让软件自动运行,发现缺陷,代替部分的手工测试。但一般只有大的项目才需要进行自动化,中小型项目不推荐使用自动化测试。 目前企业对自动化测试需求越来越多。测试人员想要在未来有更好的发展,非常需要通过掌握自动化技术来增加自己有竞争力。
2.自动化测试的学习路径
搞定性能、自动化测试,独当一面!(我当时刚刚进阶属于经验比较浅的那一批,所以才14k左右)
先说性能测试,行业内是有很多误区和痛点的:
- 只测不调,无法给出研发和运维人员执行建议
- 无法定位问题,缺乏清晰的逻辑和数据证明价值
- 性能测试工具≠性能测试
- 性能测试技术体系落后(loadrunner),急需拥抱开源软件
如果要搞定这些问题,那么性能测试你得这么去学:
性能测试的概念和流程:常见问题剖析、流行工具、方案设计 性能测试工具:jmeter工具的使用、实战;jmeter多协议、拓展与定制;分布式压测与任务调度; 性能监控:性能监控体系与监控数据采集 性能实施:分布式服务压测,场景设计、场景执行;测试结果关联分析,TPS、响应时间、线程关联分析,压力和资源使用率关联分析 性能分析与报告:jvm调试与系统调试;性能瓶颈分析
性能测试你能到这个程度,15k那是妥妥的了,如果下面自动化测试的学习内容你能够掌握,那就可以直接冲击月薪25k!
搞定Python或者Java语言,建议先从Python入手,先学习Python的基本语法等。
web端的自动化测试:selenium安装、录制、处理;web控件、JavaScript脚本、PO模式; 移动端APP自动化测试:appium使用、录制、元素定位方法;APP控件定位、交互,参数化用例;appium问题定位分析、源码分析、二次封装; 服务端接口自动化测试:接口自动化测试框架request;接口请求构造、断言;json/xml请求、响应断言;headcookie处理、认证体系;
看完自动化测试学习路径后,若想得到一个完整的自动化测试完整路径。我们还需要了解学习自动化测试的前置(支撑)知识和技能。
三、从自动化测试进阶测试开发,拿到了28k(基本人生颠峰)
这个时候我已经掌握至少一门开发语言,并能熟练应用,能够客服团队碰到的技术难题,能够设计完成测试框架,并指导测试人员实施,能够对行业带来较大的影响,当然进阶的过程也没有这么顺利,我大概再自动化测试这个层次沉浸了4年时间,且最近一两年才转型测试开发,关于测试开发需要学习那些内容,我也一一陈述出来
性能和自动化玩精通,月薪在10k+甚至是20k+都是很轻松的,那如何冲击30k+呢,这就要求往技术专家或者管理层去发展了,但是即使做管理,也必要要求技术水平够硬?说做管理不需要技术精通?你试试底下的人会不会反你?
在测试开发的路线上,就要求更加专精,更加全面:
完善测试技术体系:Linux、docker、shell、SQL、Python/java
打牢自动化测试技术基础:
web自动化测试:selenium测试框架;PageObject设计模式、原则、演练;
APP自动化测试:Android自动化测试框架;appium高级应用于原理剖析;APP自动化测试实战;测试框架封装改造;ios自动化测试;
移动专项测试:健壮性测试、弱网测试、崩溃检测、耗电量分析等;移动端性能测试;移动端安全测试;
接口自动化测试:接口协议与抓包、代理技术与mock;接口自动化测试框架、HTTPrunner测试框架;dubbo接口自动化测试;接口管理工具swagger、接口安全测试
docker容器技术:docker容器、docker镜像;
持续集成/持续交付/devops:jenkins持续集成;Jenkins持续交付;
四、总结的一点工作经验
如果你是测试在职,想要获得更快的成长,我给你几条建议:
1、避免去外包公司
基于行业影响,企业需要降低成本,会更倾向于使用外包。大公司使用外包的结果就是外包市场会进一步发展,这些发展会进一步推动企业裁员的进程。如果外包能够搞定很多事情,外包的价格又比较低,很明显很多低级的工作会更倾向于使用外包的。
外包公司的本质是通过提供廉价劳动力赚取剪刀差的一种公司。你拿到的收入,已经被扣除了一部分了。所以你进入这样的公司,既没有办法接触到业务核心,公司也不会提供很好的培训,也没有很好的经验积累,也没有进入更深的测试实践,所以在这里面的成长会面临发展困境。
如果你现在在外包公司,建议你待个一年两年就立马要走,千万不要留的太久,不然将来会面临很大的发展问题。哪怕短时间内给的薪资比较高,但是一定要记住着这不是你最终的归宿。
2、提升核心竞争力
技术能力:编程能力,自动化能力,架构能力。
首先说编程能力,你在测试行业混,Python和Java,这是两门基础要学的语言。这两个你学会了,任何一家公司的要求都是可以匹配的。如果你想做的更好,你可去接触一下go语言。多数公司即使要求你会一门新语言,也会先看你会不会Python或者Java。
第二个指标是自动化,自动化能力衡量的是你在这个领域里面是否有很强的生产力,作为一个测试工程师,最关键的是UI的自动化,接口的自动化,以及持续集成,持续交付。这几个是你核心能力。其中UI自动化,接口自动化以及持续集成,是测试工程师的基础能力。再往上走,那就是持续交付,Devops,一些白盒能力,测试的监控能力,更多的能力往研发和运维去深入,所以架构能力在这里是很重要的考核的指标。
领域知识:架构能力,业务领域,数据意识
软实力:沟通,管理
3、职业选择
首选名企,大厂,一线城市
别问为什么
4、学历建设(学历建设是长期的事情)
非本科的需要注意提升学历
本科以上的同学注重能力和履历
总体来说,别抱怨,好好提升自己的能力,目前测试行业的缺口,在测试开发,好好努力!
既然都看到这里啦,最后请你帮个忙:
1、点赞,让更多小伙伴看到;
2、关注我,持续更新测试干货。
敲字不易,如果此文章对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
END配套学习资源分享
最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
加入我的软件测试交流qq群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
全套资料获取方式: