作为一名测试工程师,包括身边的朋友做测试开发都是野路子出家,前几年觉得入门低,薪资可观,就今年的行情而言,人多或少,都不太乐观!当你选择进军测试的时候,你就应该想过自己以后如何发展?我以前也在总在给自己找理由:“等我做几年测试之后再说,是走技术路线还是走管理路线看自己的情况再定!”结果直到自己30岁被裁了才知,做一个职业规划多么的重要!
所以,对于测试人员而言,个人觉得有2个发展方向:一是技术,二是管理。
先说一下管理
在大城市中,管理这个方向会逐渐的扁平化。高层管理会越来越少。一线管理会越来越多。
测试工程师的管理路线:初级测试工程师>测试组长>测试经理>项目经理/产品经理>产品总监
因此,你想去做管理,需要的很强的管理能力, 需要对产品测试全流程负责,需要在整个过程中,分配不同的测试任务,需要协调开发、维护、市场、服务人员,项目经理, 通过完成公司业务的目标,再次过程中,一定要懂得适当的去留!
另外在这个维度,你需要提高自己的执行力和沟通能力,所谓的执行力,说白了就是“领导要你做的事情你做到没有”,就这么简单。作中的执行力是第一位的,没有这个,其他的做得再好都是白搭,这是职场中的【1】,没有这个【1】,后面的【0】再多,也毫无意义,都是零而已。
对于沟通能力,一个良好的沟通能力,是管理中不可缺少的一个技能!
对于技术而言
在技术方面要能解决团队测试中遇到的困难、难题,不断提升团队的测试能力。
从刚开始的初级级测试工程师,手工功能测试,包括搭建测试环境、执行测试用例提交缺陷报告、编写测试文档 到现在的高级测试工程师,性能、接口、app等自动化测试、熟练编写测试脚本、编写测试框架,再到测试专家
因此,我觉得测试工程师对于技术而言,发展路线是:初级测试工程师>中级测试工程师>高级测试工程师>测试专家>测试总监
技术方向需要掌握测试开发技术栈,包括自动化测试、性能测试、安全测试、运维能力、开发能力、计算机基础知识等,需要精通某个领域。
自己职业发展时记住一定要细于精,要么你在这个岗位的某个领域或某些相关联的领域里深耕细作下去,成为某个领域的专家和权威;要么你就在这个岗位上先精通一个领域,再延伸拓展,去发展你的广度。
自动化测试,你需要做好一下几点
工具的使用
最初的学习只需要掌握几种常用的工具,比如ALM、禅宗、单元测试工具、
后面你需要学会更加强大的工具:
· Fiddler、Charles:抓取接口请求数据包,协助定位问题及接口测试
· 禅道、Jira:管理测试用例和缺陷
· Navicat:数据库连接客户端
· Postman、JMete、Junit、Testng、Selenium、Appium等。
编程语言的选择
根据目前的市场来看,对于测试人员来说要想学习一门编程语言的话,建议选择Java或者Python。
在初级阶段,你需要学习 Python 的基本语法和常用库,掌握 Python 的基本编程思想和技能。以下是一些学习资源和技术栈,可以帮助你入门 Python。
Java语言有一定的难度,但是对于开发来说Java是市场体量最大的,所以学习Java方便实现对后台系统进行白盒测试和性能测试
针对一门编程语言的学习步骤如下,以Python语言为例:
1.学习Python的基础语法:变量、标识符、流程控制、数据序列、函数。
2.学习面向对象编程:类、对象、封装、继承、多态。
3.学习一些框架用来解决具体的问题。
必须要掌握的数据库
目前大部分应用软件都离不开数据库,熟练掌握SQL Server、Oracle、DB2等一种或多种数据库系统的使用,熟悉使用SQL语言,也是一个测试工程师在技术上必备能力
另外,在技术上,你除了要掌握和熟练使用当前主流的功能、性能自动化测试工具以及测试管理工具,具备编写测试脚本、进行功能和性能测试自动化测试的能力,更重要的是要了解现在AICG对测试 的影响,AI大语言模型技术正在改变软件测试的点点滴滴。
总结
小编觉得,测试是做管理还是技术,根本不用选择,毕竟小孩子才是去做选择题,毕竟管理和技术随着职业发展,是能相互转换的,一个人的经验来看,做了管理也不能放弃技术,做了技术也需要适当管理。两者并行存在~