软件测试职业发展方向类别
大家好,我是阿娟,最近有小伙伴问到关于软件测试职业规划相关的问题,今天汇总了一下分享给大家
一、打好地基
进入测试行业,不管以后是往哪个方向发展,打好基础很重要(沉淀自己的测试技能),包括掌握业务知识、测试用例的编写、测试用例的执行、bug的查找和定位、编程能力等等,
1、软件测试的基础概念,熟练编写测试用例设计、测试计划等
之前编写过一篇关于如何写出一份高质量用例的文章,可以参考下:
2、熟练掌握几种常见的缺陷管理工具(禅道、Jira等),熟练掌握bug的制定标准、bug定位和分析能力
3、熟练使用一些工具:Charles、Postman等工具
4、掌握基础的linux命令和sql语句,方便定位问题或是造数据,同时多了解HTTP/HTTPS协议等的原理和作用
5、至少熟练使用一门编程语言,Python、Java等,可以编写一些测试脚本或是做UI/接口自动化来提升测试效率
6、掌握一些专项测试,例如性能测试,安全测试等
7、熟练熟练使用CI/CD等
8、还有很重要的软实力,例如沟通能力、表达能力、解决问题的能力等。
9、测试流程和风险的整体把控、公司项目的跟进,掌握整个发布流程,从需求评审到最后上线
二、持续学习,制定目标
等基础打好了,不断学习的同时,可以给自己的职业发展做一个规划了,考虑自己的职业方向
一)在测试行业深耕
1、业务测试工程师(业务专家)
这是最常见的职业方向,测试工程师负责设计、编写和执行测试用例,以验证软件的功能、性能、安全等,并报告和跟踪缺陷。一般这种不仅了解软件测试的技术方面,还要具备对业务的深入了解,测试过程中能从业务的角度捕捉到更多需求和问题。业务专项能力是日常工作累积的结果,学习并掌握所测试的业务领域,也包括相关的行业规则、流程、术语和标准等。
2、测试开发工程师
现在独立的自动化工程师岗位较少了,没有单独把自动化测试工程师作为一项,而自动化工程师主要是使用脚本和自动化测试框架来自动执行测试用例,开发和维护自动化测试脚本,以提高测试效率。
而测试开发工程师更多是负责构建和维护自动化测试框架、工具和测试脚本,以提高测试效率和质量。
除了编程语言能力,还要了解整个测试流程,挖掘更多的自动化需求,优化整个测试流程,以便提高测试效率和质量。
3、白盒测试工程师
深入了解软件的内部运行机制和代码逻辑,并通过编写测试用例和执行测试来发现代码潜在的问题。
需要掌握一门编程语言、数据结构和算法、白盒测试方法和策略、白盒测试工具等
4、性能测试工程师
使用各种性能测试工具和方法,模拟各种场景,以验证系统在不同条件下的性能表现并给出性能报告以及优化建议。
需要掌握网络和系统基础知识、性能测试基础知识、监控和性能指标、性能测试工具、性能优化技术等等
5、安全测试工程师
通过安全测试技术和工具,模拟攻击场景,发现潜在的漏洞和安全风险,并提高测试报告以及修复建议
需要掌握网络和系统安全基础、 安全测试方法和流程、 常见漏洞和攻击技术、安全测试工具、安全漏洞分析等
6、测试经理/测试主管:
负责测试团队的管理和组织,包括测试计划制定、资源分配、风险管理等等。
需要掌握团队管理能力(包含团队建设、绩效评估等)、项目管理能力(包含项目规划、项目流程、项目资源管理等)、风险管理能力(识别项目中的风险,并制定策略,以确保项目的顺利进行)
7、质量保证(QA)工程师:质量保证工程师关注整个软件开发流程中的质量,他们参与制定开发流程、规范和最佳实践,确保软件在整个生命周期中的质量。
二)转行或是其他工作
转行到相关联的一些职位,例如产品经理、项目经理、开发等,转行之前考虑清楚,不要盲目去转。
转行到其他非关联性岗位、从事其他工作等等。
