2022软件测试学习路线图,怎么学?怎么开始?在内卷中生存......

目录:导读

    • 前言
    • 一、学习测试基础理论
    • 二、学习数据库
    • 三、学习Linux系统
    • 四、会做接口测试
    • 五、会做性能测试
    • 六、掌握自动化测试
    • 七、其他
    • 八、总结


前言

测试的目的
测试的目的不仅仅是为了发现软件缺陷与错误,而且也是对软件质量进行度量和评估,以提高软件的质量

测试的对象
1、根据软件的定义,软件包括程序、数据、文档,所以软件测试并不仅仅是程序测试。软件测试贯穿于整个软件生命周期中

2、由于在整个软件生命周期中,各阶段有不同的测试对象,形成了不同开发阶段的不同类型的测试。需求分析、概要设计、详细设计以及程序编码等各阶段产生的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应作为“软件测试”的对象

测试的风险
1.软件测试中的软件风险分析是根据预测软件将出现的风险,制定软件测试计划并排列优先等级,风险分析是对软件中潜在的问题进行识别、估计和评价的过程

2.风险也包括进度风险、质量风险、人员风险、变更风险、成本风险 等

对于很多新入行或者打算入行,成为软件测试工程师的小伙伴来说,刚开始接触这行,不知道自己究竟该学些什么,或者不知道必须掌握哪些知识,才能成为一名合格的测试工程师。

根据我个人观点,如果你能在学习过程中,学好以下知识点,自行搭建好测试知识体系,那么想入行,就非常容易啦~

一、学习测试基础理论

都说理论知识是学习的基石,对于软件测试学习来说,学习测试知识基础也是非常重要的。

首先,我们需要掌握软件测试开发流程及相关模型,了解敏捷开发的相关知识,能做好测试分类,掌握测试流程,能编写测试用例(包括但不仅限于黑盒测试的用例设计等);

然后,学习缺陷(bug)管理及软件的生命周期,能编写测试报告等;

接着,了解不同端口的测试点和测试方法,比如网页端、手机端等。在这个阶段,我们通常需要学习系统、兼容性测试、专项测试、接口测试、性能测试,还要学习使用工具。常见的有Monkey等等。

最后,要会编写常见的测试文档,如bug单,测试计划、软件测试报告等。

二、学习数据库

我们都知道,软件之所以能实现前端和后端的交互,主要是由于数据间的联系。而不管是哪种类型的测试,都离不开数据库的使用和支撑。软件前后端的交互实质上就是数据交互。

所以,学习使用数据库就显得非常重要。

关于数据库,测试新手们需要了解数据库的基本概念,关系型数据库,数据库SQL增删改查,常见的表操作语句,以及数据库工具的使用。比如Navicat的使用等等。

三、学习Linux系统

我们都知道,Linux系统是主要的服务端操作系统。日常工作中,我们想要定位一些bug的来源,就需要查看服务器端的日志。很多时候,直接在软件测服务器查日志不现实,所以,我们要通过Linux系统来搭建一个测试环境,通过这个测试环境的服务器,去找bug。

所以,作为测试工程师,我们需要掌握Linux的基本知识点,比如多用户、多版本、多发行版本等相关知识;还要知道常见的Linux命令和工具,会部署和配置基本的应用,会安装使用docker,会编写基本的shell脚本,会使用远程终端工具等等。

四、会做接口测试

前面我们提到了要学习接口测试的基础知识,这里更注重实际操作。关于接口测试这部分,我们主要还是分几块:包括HTTP/HTTPS协议,常见的请求方法,cookies和session,接口文档和测试用例,接口测试工具的使用等等。

我们都知道,接口测试本质上也是功能测试的一种,但是接口测试的重要性却极高,因为它会连接软件的各个系统,所以,学好接口测试非常重要。做好接口测试,可以更早的发现软件隐藏的问题,从而提高测试效率,降低修复成本。

五、会做性能测试

关于性能测试,我个人认为,它是一个技术要求比较高的测试版块。如果你刚入行,可以把性能测试作为自己工作两年后的一个目标。但是在那之前,你一定要先掌握好性能测试的相关内容,这样才能慢慢在这个领域立住脚跟。

所以,我们要学习性能测试的基本概念、测试流程(包括但不限于需求分析、场景设计、编写脚本、性能调优等等)、使用性能测试工具(如Jmeter、Loudrunner等)、编写性能测试报告。另外,多接触性能相关的项目,学习完整的项目经验,对于我们未来的发展,将有非常好的帮助。

六、掌握自动化测试

自动化测试是时下流行的测试方式,也是未来测试行业发展的一个方向。学习自动化测试,对于新手来说,是拿到高薪的一个阶梯。所以,在那之前,掌握一门或几门编程语言就显得尤为重要了。

个人优先推荐Python,其次Java,并且还要掌握一定的前端知识。另外,还要掌握相关的自动化测试工具selenium、appium等,当然还要掌握常用的自动化测试框架。对于接口自动化测试,如果用python实现的话,则需要掌握requests库和unittest框架的使用。

七、其他

有余力的小伙伴,还可以掌握一些公共知识,比如SVN的使用,Git版本操控,持续集成Jenkins的部署和使用,等等。

这部分主要是帮助我们更好的处理和完成工作中,一些比较有特点的测试问题。虽然不会经常使用这些技术,但是一旦出现,有可能出现不知所措的问题。所以有余力的小伙伴可以多多学习。

八、总结

生活不能等待别人来安排,要靠自己去争取和奋斗,努力的人,就像盛开的花,越努力越美。

不是每件事都注定会成功,但是每件事都值得一试。如果你决定要旅行,那就别怕风雨兼程。

这是你成长道路上一定要面对的,那就坚强,勇敢,自信的面对,你可以实现自己的梦想。

你可能感兴趣的