本人7年测试经验,在学测试之前对电脑的认知也就只限于上个网,玩个办公软件。这里不能跑题,我为啥说:自学软件测试,一般人我还是劝你算了吧?因为我就是那个一般人!
软件测试基础真的很简单,是个人稍微认真点都能懂,这就是好多人说软件测试简单、易懂、好学,然后就是一顿浮夸的言论,误导那些小白,这里我就给那些轻浮的人泼一桶冷水,懂和学会是一码事吗?
先来说一下软件测试这个就业吧,我现在生活在祖国的肚皮上——成都,下面亲生经历,我是自学的软件测试,反正当时自我感觉良好,之后就开始找工作,投了10家简历,欣赏了6家写字楼的酒店环境,所幸的是面的6家中有4家给了我offer,虽然工资都不高,但好歹我觉得我还不是那么一无是处,也算是入了行,到后面一步步走上进阶之路,也算是在众多自学人中比较成功的一个了,后面是我写给那些铁憨憨的,你当真要自学软件测试,一定要按我说的做…
这里详细的给大家说下,对于0基础的朋友,应该怎么去学习软件测试。
学习软件测试有2条路可以选:
1.找个靠谱的培训机构去培训啦,你就什么都不用想了,跟着培训结构认真的学习就行了。(90%的人走的路线)
2.当然是自学啦,这里并不会给你推荐培训机构,今天讲的是怎么去自学软件测试。(10%的人走的路线)
自学软件测试需要多久?(从真正的零基础到找到软件测试的工作)
从零基础到找到软件测试的工作需要多久呢?还是分两条路来讲:
1.培训机构:最短的2个月,最长的4个月多!(根据公司招生的质量来定的!)
2.自学软件测试:时间的话就真的不好说了,和你手头的资料以及你个人的毅力有关,排除资料的问题,假设你能够弄到靠谱的资料(比如:全套测试视频,全套PPT等),然后开始自学按照一个正常人的毅力来判断:至少4个月把!
从零基础到找到一份正常的软件测试工作,4个月绝对是一个保守的时间,你想想,有些培训机构都要用4个月的时间,培训机构是8小时学习的,你觉得你的毅力能8小时不间断的学习吗?当然我这里并不是鼓励你们去培训机构,而是陈述一个事实!
三、怎么自学软件测试(这是真正的从零开始自学的方案)
我按照薪资的不同大致划分成3个档位:
1.月薪5-9k:从零基础入门到能够找到工作
2.月薪15-25k:测试在职搞定性能测试和自动化测试
3.年薪30W+:搞定测试开发,进入一线大厂
第一阶段:月薪5-9k,刚刚入行,先学会功能测试!
可能你是刚毕业的学生,也可能你是打算转行进入软件测试这个行业,那么首先以下基本的理论你是必须要掌握的:
1.软件测试的定义、生命周期、工作流程、需求分析;
2.测试用例的设计、编写、评审;
3.bug的基本知识以及禅道的使用;
4.测试计划、测试报告的编写;
5.SVN、Git版本控制工具的使用;
搞定上上面的这些基本必备内容,就已经知道可以做具体的实战内容,这个时候最好是先找一个web测试项目去做一下,假如一个项目拿到手之后,按照下面的一套流程跑一遍:
1.发布项目进行立项,建立项目组进行分工;
2.需求评审,学会如何看需求文档,进行需求分析,罗列测试点;
3.整理测试点,编写测试用例,然后进行用例评审;
4.执行测试,比如功能、界面、前后台、兼容性、数据库,对于发现的bug提交到禅道;
5.分析、总结、编写测试报告;
这个流程完整的跑一遍之后,只能说对于整体的测试流程算是掌握了,但是仍然不足以找到一份合适的工作,想要学会做功能测试,以下的内容也是必须掌握的:
Linux、数据库、接口测试、APP测试等
嗯,大概就是以上的内容吧,以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。
会了以上这些内容,只能说是能够获得一份工作,但是现在行业招人的要求原来越高,搞定自动化或者性能测试,才能拿到10k以上的月薪。
第二阶段:月薪15-25k,搞定性能、自动化测试,独当一面!
先说性能测试,行业内是有很多误区和痛点的:
1.只测不调,无法给出研发和运维人员执行建议
2.无法定位问题,缺乏清晰的逻辑和数据证明价值
3.性能测试工具≠性能测试
4.性能测试技术体系落后(loadrunner),急需拥抱开源软件
如果要搞定这些问题,那么性能测试你得这么去学:
1.性能测试的概念和流程:常见问题剖析、流行工具、方案设计
2.性能测试工具:jmeter工具的使用、实战;jmeter多协议、拓展与定制;分布式压-测与任务调度;
3.性能监控:性能监控体系与监控数据采集
4.性能实施:分布式服务压测,场景设计、场景执行;测试结果关联分析,TPS、响应时间、线程关联分析,压力和资源使用率关联分析
5.性能分析与报告:jvm调试与系统调试;性能瓶颈分析
性能测试你能到这个程度,15k那是妥妥的了,如果下面自动化测试的学习内容你能够掌握,那就可以直接冲击月薪25k!
搞定Python或者Java语言,建议先从Python入手,先学习Python的基本语法等。
1.web端的自动化测试:selenium安装、录制、处理;web控件、JavaScript脚本、PO模式;
2.移动端APP自动化测试:appium使用、录制、元素定位方法;APP控件定位、交互,参数化用例;appium问题定位分析、源码分析、二次封装;
3.服务端接口自动化测试:接口自动化测试框架request;接口请求构造、断言;json/xml请求、响应断言;headcookie处理、认证体系;
第三阶段:月薪30k+,对标大厂,冲击测试开发岗位!
性能和自动化玩精通,月薪在10k+甚至是20k+都是很轻松的,那如何冲击30k+呢,这就要求往技术专家或者管理层去发展了,但是即使做管理,也必要要求技术水平够硬?说做管理不需要技术精通?你试试底下的人会不会反你?
在测试开发的路线上,就要求更加专精,更加全面:
1.完善测试技术体系:Linux、docker、shell、SQL、Python/java
2.打牢自动化测试技术基础:
3.web自动化测试:selenium测试框架;PageObject设计模式、原则、演练;
4.APP自动化测试:Android自动化测试框架;appium高级应用于原理剖析;APP自动化测试实战;测试框架封装改造;ios自动化测试;
5.移动专项测试:健壮性测试、弱网测试、崩溃检测、耗电量分析等;移动端性能测试;移动端安全测试;
6.接口自动化测试:接口协议与抓包、代理技术与mock;接口自动化测试框架、HTTPrunner测试框架;dubbo接口自动化测试;接口管理工具swagger、接口安全测试
7.docker容器技术:docker容器、docker镜像;
8.持续集成/持续交付/devops:jenkins持续集成;Jenkins持续交付;
四、自学软件测试可以找到工作吗?自学软件测试能就业吗?
自学软件测试可以找到工作吗?
首先我给的答案是肯定的!关键就看你懂不懂路,入没入行!隔行如隔山!
其实学软件测试是很好找工作的,因为一般的高等院校没有专门的软件测试专业,就算有,也不成体系,所以大部分人才都是通过培训机构培养的,但是远远赶不上每年的人才需求,因为软件测试的人才缺口很大。另外软件测试分为功能测试、性能测试、接口测试、自动化测试,只要掌握好其中一个方向,就能够找到相关的测试工作。
作为初级的测试人员,用人单位对你的期待并不高的。你要做的就是积极的表现自己的优点来,比较强烈的做测试的愿望,比较积极的态度,比较主动的学习能力。
五、自学软件测试如何找工作(这是一个测试老司机总结的经验)
1.自学软件测试如何找工作呢?
首先:个人建议刚开始出来最好是去一线城市:北上广深,因为一线城市的就业机会多很多,相对来说更容易接纳刚入行的人,并且一线城市对软件测试这一块更加重视,在流程以及技术方面能够学到更多的东西!
2.自学软件测试简历如何写?
对于简历这一块,个人的建议是必须要包装,必须要包装,必须要包装,重要的事情说三遍!!!为什么呢?因为如果你不包装简历的话,那么在一线城市,你接到的面试电话90%都是培训机构的电话,到时候腿跑断了还没有一个正式的面试你就知道有多悲催了!
我太难了!那怎么包装呢?这里笔者贴一份初级测试工程师包装的简历:
六、总结忠告
努力了不一定有回报,但不努力是一定不会得到回报的。人类的幸福和快乐在于奋斗,而最有价值的是为理想而奋斗。要努力,不放弃,为了自己的理想,为了美好的明天。有梦就去追啊,愣在原地做什么。无论明日,有多落魄,至少今天,没有蹉跎。 生前何必久睡,死后自会长眠。
最后,自学软件测试学习方法送上:
上面就是我为大家整理出来的一份软件测试工程师发展方向知识架构体系图。希望大家能照着这个体系,完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
这些资料,对于做软件测试的朋友来说应该是最全面最完整的备战仓库!你可以在公众号:豆子熊,获取上方面试题资源完整版及自动化资源详细解析。作为一位过来人也是希望你们少走一些弯路。
以及一份216页软件测试工程师面试宝典文档资料,还有相对应的视频学习教程:其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….
加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。