写点什么

软件测试人员的职业发展

  • 2020-09-18
  • 本文字数:3268 字

    阅读完需:约 11 分钟

软件测试人员的职业发展

在《关于软件质量,大家都在关注什么》一文中,我们了解到软件测试领域新的关键趋势主要体现在以下几个方面:


  • AI 的发展与软件测试

  • 敏捷与 DevOps

  • 自动化测试

  • 环境和数据

  • 成本与效能



在这样的趋势下,测试人员的职业发展之路有什么变化呢?我们先来看看测试人员的技术发展方向有哪些。

技术方向

基于前面提到的新趋势,测试人员的职责由单一的测试软件系统是否工作、是否满足业务需求变得更加多样化,测试人员可以全流程参与软件开发,让测试活动贯穿软件开发整个生命周期。因此,测试人员的职业发展技术方向有:


  • 敏捷测试专家

  • 高级测试开发专家

  • 专项测试专家

  • QAOps 专家

1. 敏捷测试专家

敏捷测试强调的是尽早测试和频繁测试,测试人员需要能够从需求分析阶段开始介入,全流程参与,跟整个团队一起实现团队为质量负责。对敏捷测试专家的技能要求有:


领域测试能力: 测试人员需要丰富的业务知识、较强的业务敏感度和业务理解能力,熟悉各种不同类型的业务模式,包括新兴业务 IoT、智能服务、区块链等,能够制定相应的测试策略,有效协助团队做好质量内建,实现交付价值最大化。


自动化测试能力: 自动化测试是敏捷开展的必要条件,自动化测试技能是测试人员的必备技能。成为敏捷测试专家,要求测试人员了解不同的自动化测试框架的优缺点,能够指导项目自动化工具的选型;了解测试分层的思想,能够帮助团队制定合适的自动化测试策略;能够实现业务功能层的自动化测试,能够跟开发人员一起参与底层自动化测试(接口测试、单元测试等)的评审工作;了解持续集成工具,能够在持续集成流水线上配置和运行自动化测试。


沟通协调能力: 敏捷测试要求团队为质量负责,测试人员作为主力,需要承担起质量的分析者和协调者的角色,要求有很好的跟不同角色沟通和协调团队合作的能力。

2. 高级测试开发专家

高级测试开发专家的必备技能要求有高级自动化测试、白盒测试、开发和平台构建能力,要求有很强的测试代码编写能力,能够自行开发自动化测试工具、搭建自动化测试框架、构建自动化测试平台和服务。


同时,最好还有 AI 应用的基础算法应用能力和自然语言处理技能,需要了解和掌握 AI 相关知识,以及 AI 知识在测试中的应用,以帮助实现自动化测试的智能化。

3. 专项测试专家

专项测试技能集包括安全、性能等跨功能测试技能,需要有扎实的计算机基础知识,了解安全问题的类型、安全测试工具的优缺点,能够提供安全测试解决方案;熟悉性能影响因素、性能测试关注点以及提供性能调优方案等。


专项测试技能也包括测试数据和测试环境的管理,要求熟悉虚拟化、云计算技术、数据匿名化等数据处理技术,能够提供测试数据和环境管理的方案。

4. QAOps 专家

测试右移已经越来越被重视,这意味着测试活动需要右移到生产环境,需要测试人员跟 Ops 人员更紧密的合作,QAOps 专家也应运而生。QAOps 专家需要了解基础设施相关技术与实践,了解日志管理、日志监控以及日志分析技术,同时还要有用户行为分析能力,通过跟 Ops 的合作,充分利用生产环境的各种类型的信息来优化软件开发和测试流程,以实现最终优化业务价值的目标。


管理方向

管理岗位在新的趋势下有些将不复存在,一般在相对传统的组织架构下才会有,但是目前来看还是有相当的企业是适用的,在此也简单聊一下。根据每个公司的情况不同,测试人员直接相关的管理岗位也会有些不同,大体有如下这些:


  1. 测试组长

  2. 测试经理

  3. 项目测试负责人

  4. 测试总监

1. 测试组长

测试组长一般带几个测试工程师, 负责任务分派和人员管理等工作。除了必备的测试技能外,测试组长需要的管理技能有:


任务优先级识别能力: 需要能够识别任务的优先级,并根据当前工作合理分配给不同的人去完成。


培养团队成员的能力: 带领团队需要对团队成员进行培养和发展相应的能力,需要能够识别不同人员的自身特点,有针对性的培养相应的技能。


沟通协调能力: 要带领好团队,较强的沟通协调能力必定能事半功倍,让团队工作更顺畅。

2. 测试经理

测试经理一般是管理一个测试部门,下面可能有多个测试小组。测试经理除了需要关注技术外,还需要关注部门的发展、绩效等。需要的相应技能有:


技术洞察力: 测试经理需要对技术趋势和先进测试工具有较多了解,需要能够帮助团队确定测试技术和测试工具的研究和使用,以提高团队的工作效能。


风险识别能力: 测试经理需要能够很好的理解业务需求、识别项目风险,负责制定测试策略和具体的实施方案,并能进行总结、报告,及时反馈项目质量状态。


培养团队成员的能力: 团队成员的能力培养非常重要,测试经理跟测试组长一样需要这个技能。


沟通协调能力: 测试经理不仅需要协调测试部门内部的各种情况,还需要横向跟公司其他部门进行沟通协调,沟通协调能力更加重要。

3. 项目测试负责人

项目测试负责人主要负责一个项目的质量保障工作,需要有跟测试经理相似的技能: 技术洞察力、风险识别能力和沟通协调能力

4. 测试总监

测试总监是测试经理的延伸,属于质量部门的最高负责人,需要负责公司所有项目的质量活动,所要求的的技能跟测试经理类似。


易转型方向

除了测试直接相关的管理岗位外,根据测试人员的职业特点,以下两个岗位是比较适合转型的方向:


  • 项目经理

  • 产品经理

1. 项目经理

测试人员,尤其是敏捷团队的测试人员,涉及到项目质量相关的方方面面,自然有着能纵观大局的机会,成功转型项目经理的例子非常常见。相应的技能要求有:


团队管理能力: 管理团队,包括人员风险识别、协调沟通等方面,需要掌握一定的人际关系相关的软技能。


客户关系管理能力: 项目经理除了要搞定团队,还有最为关键的是要处理好跟客户的关系,客户关系管理技能特别重要。


决策能力: 决策能力是一种综合的判断能力,即面对几个方案或错综复杂的情况,能够做出正确的判断并采取行动。

2. 产品经理

软件测试人员都需要能够很好的理解业务需求,一般都有很强的业务能力,转型当产品经理是一个不错的方向。产品经理相应的技能要求有:


用户需求挖掘能力: 产品经理需要有包括挖掘潜在用户需求、确定需求优先级、构建用户画像的能力。


多维度思考能力: 产品经理需要能够从基本维度、外在维度、核心维度和商业价值维度思考的能力。


抽象能力: 产品经理不仅要能从事物本身进行抽象,还需要能够考虑不同层次的抽象;抽象完后,还需要把抽象的对象回归到展示层面,需要有抽象回归具象的能力。


三个转变

测试人员要培养前面介绍的技能,首先需要实现下面三个转变:


1. 对测试的认知


测试活动不仅是验证系统功能,可以更加的多样化。比如,测试左移就包括对需要的澄清和验证,测试右移则包括生产环境的监控和信息收集等。


测试人员不是质量的把关者,好的质量意味着要交付更多的价值,而不是没有缺陷那么简单,测试人员不再是发现缺陷越多越有成就,而是要想着如何跟不同角色高效合作,使得交付的产品能够优化业务价值。


2. 对技术的关注


由于测试活动的多样性,不能只关心测试相关技术,要把视野扩展到软件开发过程中各个环节接触到的领域知识和不同类型的技术,不同业务类型、技术架构和基础设施等都会对测试有不同的影响和要求。


3. 测试不可以独立存在


测试不能再以独立部门自居,需要跟不同的角色更多的沟通和合作。比如,需求分析阶段需要跟需求人员有密切的沟通,实现自动化测试过程中可以跟开发人员结对或其他方式的深度合作,生产环境下的测试需要跟 Ops 人员紧密合作等。


同时,测试人员对于系统所采用的技术架构、技术方案的设计思路都需要有所了解,从而更好的理解开发的工作、理解架构演进对于测试的影响,更好的开展测试工作。

最后

了解了发展方向,如何才能让自己的职业生涯更圆满呢?更多的学习建议可以参考我去年在BQConf的演讲《BQConf演讲:软件测试人员该何去何从》里提到的那几个方面:


  1. 确定方向,目标驱动

  2. 持续学习,把知识变成技能

  3. 勇于突破,系统思考


愿各位测试同仁的职业发展之路更加顺畅!


作者介绍


林冰玉,ThoughtWorks 高级软件质量分析师,QA Lead。13 年多的质量保障相关工作经验积累了丰富的企业级应用和大型产品应用的测试和管理经验,尤其擅长敏捷开发过程中的质量分析和保证工作。


本文转载自 ThoughtWorks 洞见。


原文链接


软件测试人员的职业发展


2020-09-18 14:003850

评论

发布
暂无评论
发现更多内容

书单 | “阿里云数字新基建”系列丛书全家福来啦!

博文视点Broadview

Serverless 让我们的运维更轻松

领创集团Advance Intelligence Group

#Serverless

什么是代码加密?基于云效 Codeup的代码仓库加密是如何实现的

阿里云云效

云计算 阿里云 代码管理 Codeup 代码加密

【愚公系列】2022年04月 二十三种设计模式(零)-简单工厂模式(Simple Factory Pattern)

愚公搬代码

4月月更

以OceanBase为例,分析事务型评测基准对分布式数据库的适用性

OceanBase 数据库

分布式数据库 oceanbase

在线YAML转CSV工具

入门小站

工具

TASKCTL 连接不到服务器的4种情况

敏捷调度TASKCTL

分布式 调度引擎 ETL 自动化运维 调度任务

TDesign 更新周报(2022 年 4 月第 3 周)

TDesign

如何做好任务管理,手把手教你怎么做最高效的任务管理

阿里云云效

云计算 阿里云 云原生 研发团队 项目协作

linux之rpm命令

入门小站

Linux

移动端日历组件设计与实现

CRMEB

图数据库|正反向边的最终一致性——TOSS 介绍

NebulaGraph

图数据库 知识图谱

用css制作旋转的立方体

云智慧AIOps社区

CSS 前端 大前端 3D css特效

博云 BeyondCMP 云管理平台 5.6 版本发布

BoCloud博云

云管理平台

物联网低代码平台常用《组件介绍》

AIRIOT

开发 物联网 平台搭建、

【ELT.ZIP】OpenHarmony啃论文俱乐部——这些小风景你不应该错过

ELT.ZIP

神经网络 OpenHarmony ELT.ZIP

Apache Doris (incubating) 1.0 Release 版本正式发布!

ApacheDoris

数据库 大数据 开源 OLAP apache doris

国产化云平台如何实现多云管控,黄河云来“打样儿”

BoCloud博云

国产化 云管理平台

深圳助力建设全国「数据交易」大市场,「隐私计算」技术赋能数据要素安全流通

洞见科技

HLP分词后的文本如何在web端高亮显示

lo

前端 4月月更

优秀程序员的30种思维(29/100)

hackstoic

技术思维

易周金融观点:遏制NFT金融化等打下监管良基

易观分析

NFT

阿里云代码托管平台,不限容量,免费使用

阿里云云效

云计算 阿里云 代码管理 代码托管 阿里云代码托管

OceanBase 杨传辉参与数据库技术与应用发展研讨会

OceanBase 数据库

oceanbase

【ELT.ZIP】OpenHarmony啃论文俱乐部——浅析稀疏表示医学图像

ELT.ZIP

OpenHarmony 医学影像 稀疏矩阵 ELT.ZIP

安全之花如何盛开在华为云空间的每个角落?

脑极体

Android C/C++层hook和java层hook原理以及比较

云智慧AIOps社区

Java android 开发技能 hook

火遍全网的MBTI人格测试,为什么会有那么多人相信?

小炮

MBTI

高效进行接口测试,简单易懂!

Liam

测试 Jmeter Postman swagger 测试工具

过去一周热点回顾|Hoo虎符研究院 区块链简报 20220418期

区块链前沿News

虎符交易所

Java 操作 Office:POI word 之文档信息提取

程序员架构进阶

内容审核 4月日更 文档识别 4月月更

软件测试人员的职业发展_软件工程_张凯峰_InfoQ精选文章