零基础学软件测试不难,世上无难事,只怕有心人,况且软件测试应该算是入门IT圈比较容易的。
大白刚入手软件测试这个行业的时候也是一头雾水,每天的在网上冲浪,寻找着一个个大佬留下来的文章,总结,拆分,选取其中对我有用的章节,一路走过来辛苦与否一清二楚,没有人带的情况,纯靠着对软件测试的一腔热血摸爬滚打,认识了一些同样是从事软件测试行业的朋友,在朋友们的帮助下,总算度过了前期的摸索阶段,懂了自学的苦之后,大白也希望更多的朋友们看到大白的这篇文章能更快的走出软件测试自学积攒期。
下面是根据本人的理解,粗略整理的一个学习大纲,基本上涵盖了软件测试工程师需要掌握的全部技能,希望对刚入行或者准备学习测试的朋友提供一点指引。
首先你得确定你一定要学习软件测试,你有恒心和信心可以学会软件测试!另外你需要有一定的学习能力、时间管理能力和自控力,这样零基础学好软件测试对你而言,不难,也能很快入门!
第一阶段 测试基础
测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。最好学到什么程度呢,最好是能够理解,并能够用自己的话给复述出来。毕竟面试初级测试的时候,问的问题都是从基础理论上进行考核的。那测试基础有哪些内容呢?
测试的定义、测试的分类、测试的方法、测试的生命周期。 测试计划、测试方案、测试策略、测试用例的编写。BUG的定义、BUG的分类、BUG的六要素、BUG的生命周期。测试和开发流程的关系、瀑布流、V字形、W字型(双V)、螺旋型、敏捷等等。PDCA、5W2H等分析管理的方法 质量管理体系CMMI(了解)
大概就是以上的内容吧,以上全部都是理论和文档能力、只要你肯背、肯写,都是能独立的掌握的。
第二阶段 工具学习
软件测试的基础学完了过后,应该学习工具了。 其实学工具真的很容易,所以大家不用去纠结工具的选择。 把最基础的几个工具学习了就行了,以后用到什么工具就去学什么。 下面我会列几个必学的工具,不用太精通,会用就行了。
-
性能测试工具:loadrunner、jmeter。
-
接口测试工具:postman
-
抓包工具:fiddle
-
数据库管理工具:Navicat
-
项目/BUG管理工具:禅道、QC
-
搜索工具: 百度、谷歌
以上的这些工具都是纯图形化的,很好掌握,估计就性能测试工具稍微会费点时间。
第三阶段 代码学习
学完了以上两个部分,恭喜你,你已经是一个出色的初级测试工程师了。接下来,你要考虑你的发展方向了。是成为一个自动化测试工程师呢?还是性能测试工程师呢?还是安全测试工程师呢? 关于方向的选择,看完我的这篇文章。相信你心中已经有了答案了,那我们继续往下面说。
这个阶段,我们应该学习代码了,关于编程语言的选择,我推荐Java或者python。还有数据库也是必须掌握的!在工具篇的学习里,我认为你已经可以通过navicat学会了基本的增删查改了。
那你在这个阶段就应该学会更复杂的SQL语句的编写了,也应该会用命令行工具了。嗯,加油,各位先学习mysql就好,这个用的人多。所以现在各位可以去学习编程语言了,不过不用像开发那样,学的那么深入。比如Java,只需要学完JavaSE的部分就够你用了。python的话也是一样的,把基础的部分学完就行了。总之前期你两者二选一的学习就OK了。大白推荐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注入
-
暴力破解
-
脱库
-
等等
其实安全测试基本上偏向于网络攻防了,也就是传说中的黑客了,不过我们都是好人,这个的发展方向就是白帽子。
第四阶段 架构学习
前三个阶段学习完成后,各位就应该考虑怎么写代码更合理了。怎么去测试更全面。怎么才能更好的保障项目的质量。我认为,在这个阶段,应该回头重新学习一遍测试基础。因为这个阶段的提高是思想、方法的提高了。上面讲的都是教你应该怎么做。在这个阶段你要自己去发现、为什么要那样做。跨过了这个阶段就基本上可以成为专家了。
学习都是水到渠成的,在这个时候,你应该已经掌握了不少框架了,甚至自己也能开发合适的框架了。自动化测试框架、性能测试框架等等。已经有了属于自己的一套东西了。在群里或者论坛上去装逼、别人都会尊称你一声大佬了。
可能你也学会了一些其他的技术了,甚至在往全栈等方向跨进了。总之,到了这个阶段就没什么学习路线了。都是靠自己的悟性了。
以上就是从0开始入门的攻略了。最后大白在这里留下一些学习软件测试的资料希望能够帮到你!
一份13G的超实用干货学习资源,涉及的内容非常全面。 包括软件学习路线图,50多天的上课视频、16个突击实战项目,80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2020软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助…..+563251944自取