第一阶段 测试基础
只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的,所以说测试基础是软件测试最基础也最最最重要的一部分了。
而学习的程度并不是说理解就可以了,最好是能够用自己的话给复述出来。
那测试基础有哪些内容呢?
- 测试的定义、测试的分类、测试的方法、测试的生命周期。
- 测试计划、测试方案、测试策略、测试用例的编写。
- BUG的定义、BUG的分类、BUG的六要素、BUG的生命周期
- 测试和开发流程的关系、瀑布流、V字形、W字型(双V)、螺旋型、敏捷等等。
- PDCA、5W2H等分析管理的方法
- 质量管理体系CMMI(了解)
以上就是大概的内容,只要你肯背、肯写,都是能独立的掌握的。
第二阶段 工具学习
软件测试的基础学完了过后,应该学习工具了。
其实学工具真的很容易,所以大家不用去纠结工具的选择。
把最基础的几个工具学习了就行了,以后用到什么工具再去学什么工具就可以了。
下面我会列几个必学的工具,不用太精通,会用就行了。
- 性能测试工具:loadrunner、jmeter。
- 接口测试工具:postman
- 抓包工具:fiddle
- 数据库管理工具:Navicat
- 项目/BUG管理工具:禅道、QC
- 搜索工具: 百度、谷歌
第三阶段 代码学习
如果你已经完成以上的两个部分的学习,那么恭喜你,你已经是一名出色的初级测试工程师了。
接下来,你需要考虑你的发展方向了。
是成为一个自动化测试工程师呢?
还是性能测试工程师呢?
还是安全测试工程师呢?
其实关于方向的选择,相信你自己心中已经有了答案了,那我们继续往下面说。
这个阶段,我们应该学习代码了,关于编程语言的选择,我推荐Java或者python,当然数据库也是必须掌握的!
自动化方向
等你代码已经基本掌握了,接下来就是要学习各种自动化测试了。
- 各种单端测试框架:unittest(python)、pytest(python)、JUnit(java)
- WEB自动化测试框架:selenium(适用于java\python\javascript)
- APP自动化测试框架:appium(适用于java\python\javascript)
以上的内容,根据你学的语言进行选择。
appiunm和selenium根据你参与的项目进行选择。
性能方向
对loadrunner和jmeter的掌握更加的深入。
可以手写脚本、脱离录制。
学会了多线程编程、能够手写java或者python、不用工具直接实现压测。
学习linux,毕竟性能总是和服务器打交道的。
学习系统架构的相关知识、方便你更容易的分析系统瓶颈。
说实话、性能方向的提示更难、因为需要掌握的东西太多了。
性能测试做深入了,基本上就是架构师的水平了。
可能你现在看着这个性能方向的学习一脸懵逼。
没关系、等你把上面的编程语言学会了你就不懵逼了。
安全方向
- 渗透测试
- SQL注入
- 暴力破解
- 脱库
第四阶段
经过之前三阶段的学习之后各位接下来考虑的就应该是怎样写代码更合理、怎样测试会更全面。
上面讲的都是教你应该怎么做。
而在第四个阶段你需要自己去思考为何要这样做,也就是说这个阶段你要学会的是主动学习,
跨过了这个阶段就基本上可以成为专家了。
学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了,已经有了属于自己的一套东西了。
最后
在这里推荐一个软件测试交流群,QQ:779450660 ,群中会不定期的分享软件测试资源,测试面试题以及测试行业资讯,大家可以在群中积极交流技术问题,还有技术大佬为你解答技术问题。也可以关注公众号:程序员小野, 进去有许多资料共享!