这里首先要说明以下4点:
2、软件测试这个行业对于专业的包容性是很强的,计算机相关专业并不是进入这个行业的标准,它只是一个加分项而已。
3、编码要求不如开发,并不说明在项目开发中,开发就比测试重要。测试人员保证了项目的质量安全,与开发分工不同,大家在项目中都同等重要。
4、因为测试人员重点是要确认项目的质量安全,所以在很多项目组中,反而是测试人员驱动项目的进程。
一、如何根据自身条件进行职业规划
关于职业的规划,我觉得可以分为三个阶段,分别是:初级测试工程师,高级测试工程师,测试开发/测试主管。
这里说明一下,之前的两个阶段都是一致的,都是对于软件测试技能的积累。当完成最基本的技能以及经验的积累之后,可以有两个选择:
· 如果你对于代码的兴趣更高,可以往测开方面发展;
· 如果你对于团队建设、管理,以及项目的把控比较有兴趣,就可以往管理方面发展。
接下来,我就简单介绍一下,各个阶段,应该具备的能力。
阶段1:初级测试工程师及能力要求:
能够完成手工测试
· 能够编写手工测试用例
· 能够执行手工测试用例
· 能够使用工具,定位测试过程中遇到的问题
能够完成接口测试
· 编写接口测试用例
· 使用工具,执行接口测试用例
能够使用工具,完成性能测试
阶段2:高级测试工程师及能力要求:
能够使用代码搭建自动化测试框架
· 搭建接口自动化框架
· 搭建UI自动化测试框架
阶段3:高级测试工程师两条路径
当你对于代码有一定的基础,并且能够在平时的软件测试工作中引入代码来帮忙你更好完成测试工作的时候,你可能就需要考虑,之后的发展了。
路径一是测试主管:管理方向,独立带队完成项目的测试;
路径二是测试开发:完成测试平台以及测试工具的开发。
俗话说,不谈报酬只谈理想,都是耍流氓!!那我们就从下面这个链接来看一下,你通过不断的努力提升自己之后薪酬的回报情况~
各阶段薪资待遇
二、如何根据规划系统学习测试
我们明确了各个阶段应该具备的能力之后,我们接下来就来看一下,具体这些能力我们需要去学习哪些的技能,以及对应大概需要花费的时间。
阶段1:初级测试工程师
学习最基本的软件测试技能,包括:
· linux基础命令:日志查看,文件操作
· sql的基础语法:增、删、改、查
· 测试基础知识:测试用例的设计方法,风险预警,缺陷管理
· 测试工具使用:Postman,Jmeter,Fiddler/ Charles,ADB
当初我从零开始到掌握这些技能,大概也就是三个月的时间。而且这三个月里面,真正的技能学习linux命令,SQL基础语法,测试工具使用也就是一个月,在工作中一边学习一边使用,很快就掌握熟练了。
真正需要花时间的理解的是,测试用例的设计。这个是我跟了好几次的迭代之后,才越来越熟练的。
阶段2:高级测试工程师
这个阶段学习的重点,就已经放在自动化上面了。而且这个自动化是自己能使用代码搭建自动化框架,完成项目的自动化测试。所以步骤分为两步:
第一步:代码学习
代码学习,我推荐从Python入门。因为对于代码基础为零或者很差的同学,Python的入门相比较Java,要友好很多。我个人就是Python和Java都是自学的。
Python我从入门到能够编写自动化框架,学习了两个月(因为是在职,只能每天下班之后,以及周末学习)。Java的学习,我在有Python的基础上,入门学习就是三个月,然后搭建接口自动化的项目,在团队大佬的指导下小半年才完成。
所以,如果从零基础开始,要使用Java完成自动化框架的完成,没有一年的时间是很难的。
我已过来人的身份,强烈建议代码从Python开始。因为这样,你才能最快完成第二阶段的目标,使用代码完成自动化框架的搭建。
第二步:使用代码搭建自动化框架
· 使用Python搭建接口自动化框架
· 使用Python搭建UI自动化框架
· 使用Jenkins,完成自动化项目的持续集成
阶段3:测试开发
· 代码学习:Java,JS
· 框架学习:Spring boot,vue.js
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理