测试管理之我见

浅谈测试管理

在跟团队成员进行绩效面谈时,成员问我,怎样才能做测试管理。

先看看百科的定义:

测试管理,即是组建和管理一个测试团队,制定和落实一个有效的测试流程,计划、设计、执行并跟踪输出项目的测试报告,为项目质量提供有效保障。

 

再看看市面上来自两家公司对测试经理岗位的职责要求:

招聘要求

能力要求

1.制订测试方案及计划,包括人员安排测试进度测试流程等

2.带领测试团队完成公司产品的测试工作,执行测试计划,跟踪执行进度;

3.完成组内人员招聘培训以及及团队建设;

4.负责测试团队人员的绩效考核,培养团队成员的成长;

5.与上级及协作部门沟通测试进度及测试结果。

流程管理

团队管理

人员管理

1.带领团队完成产品和项目测试的任务,统计和分析测试结果,问题确认和跟踪,推动问题及时合理解决;

2.测试环境的配置和版本管理;

3.软件测试流程体系的梳理和建立;

4.负责测试组人员的技能和业务培训,提升团队的测试能力;

5.制定编写软件测试方案与计划,完成测试任务,编写测试报告;

6.测试团队的人员管理工作及团队建设。

质量管理

流程管理

人员管理

团队管理


所以结合我的理解,梳理了下我对测试管理的定义,以及我认为目前一个最基层的测试管理所做的事情。

把测试管理的能力模型分为六个部分:

然后针对各个模型分别讲讲我的理解。

 

人员招聘

确定招聘需求和招聘要求,为团队招募合适的人才。

  • l 刚刚走出校园的实习生,和社招的资深测试工程师的能力和经验自然是不一样的,所以对于社招和应届生的招聘要求需要分开。
  • l 通常我在面试社招时,更多关注的是社招同学的项目经验,以及过往所承担的职责,自动化工具能力,软性素质上更看重协调能力和推动能力。
  • l 而在实习生的面试时,不会过多去关注实习生的项目经验,更多关注的是实习生的学习能力和主观能动性,如果能有一些对软件测试岗位的基础知识学习和理解,那么是很加分的。

 

人员培养

制定学习目标和计划,因人而异施教,安排专业的导师,及时跟进新人学习进度并解疑。使招聘的人才在最短的时间内快速适应项目的流程,胜任项目的任务。

  • l 对于新入职的人而言,一个类似于这样的明确的工作任务和目标非常重要。

 

人员管理

1、职能明确:各岗位职能职责区分清楚,避免团队成员之间职能混乱,出现工作交叉干预、重复劳动的现象,也避免出现踢皮球的场景。

  • 有的测试团队会按照测试技术、测试设计、测试执行的组织结构来管理,这样每个团队都术有专攻,管理上也会更容易
  • 有的测试团队会按照个人全方位能力培养,要求个人同时具备测试技术、测试设计和测试执行的能力,这样对每个人的长远发展更有利,但是会因为每个人的能力参差不齐,导致团队的成员能力不均衡,个人优势不够突出

2、知人善任:依据各人的特质、能力层级、优势劣势进行任务分配,给团队成员充分展示优点的机会,避其缺点,合适的人做合适的事情。

  • l 比如有的测试人员擅长测试设计,有的测试人员擅长挖掘工具自动化搭建,有的测试人员沟通协调能力比较强,根据每个人的意愿和长处来安排任务。

3、善于倾听:尊重团队里的每个人,确保成员能够无所顾忌地表达个人观点,并能够及时觉察成员情绪上的波动,换位思考,及时建立疏通、宣泄的渠道,做好正面引导

4、敢于授权:在明确的目标要求下,适当的放手,让团队成员有能力与权力去承担并对结果负责,但是在过程中,管理者也需要随时去抽查,以便及时发现落实过程中的偏差或者问题

5、激发潜能:不畏惧新人犯第一次错误,因为错误中的总结,才能令人印象更深刻,后续不再犯。而不断的尝试新事物,才能够挖掘团队成员的潜力。

6、等级淡化:成为团队成员的朋友,在成员迷茫时能给出合适的建议,在困难时伸出援手,必要的时候需要言传身教,做成员的坚实后盾。

 

这些主要讲的是向下管理,另外还有向上管理,如何处理自己与上级之间的关系,如何向上级述职,更好的展现自己和团队的工作成绩,也是管理的一门学问。

 

团队建设

1、共同目标:

可以是时间、项目等,团队成员有着共同的目标,才能提高整个团队的凝聚力和斗志,从而取得1+1大于2的效果。

2、团队规划:

制定半年、一年,短期和长期的规划,让团队成员了解公司的远景,让大家对团队、个人的发展有信心。

3、树立标杆:

一个团队中各个成员都是不同的个体,素质和能力颇有差异,树立标杆,推广优秀成员的成绩和经验,才能提升团队的能力,使团队能力最大化。

4、奖惩激励:

团队成立阶段,多奖励,少惩治及时的给予鼓励和奖励,会让团队成员的被尊重、被信任、被认同感提高,工作动力和积极性提高。但是,团队成长成熟阶段,要多规范,建立多种合理的制度来管理与约束。奖励是激扬人性,惩治是压抑个性二者结合起来,合适的应用。

5、绩效管理:

有一套公开、公正的绩效激励体系。结合每个成员的自身特点和能力制定,制定合理的绩效。

团队潜能

通过团队活动、团队培训等方式,培养协作精神和团队精神,提升团队整体的能力,创造一种良好的氛围提高团队的凝聚力。

加强测试团队在整个项目中的地位和影响力,影响力越强,团队成员的成就感会更强,工作的动力和信心会更大,更积极正能量的心态面对工作。 

团队提升

通过各种各样的途径,培训分享,共享资源库,或者是团队图书馆也好,提升团队整理硬性软性能力。


 

流程建立

大到项目研发流程和职责分工,小到测试缺陷跟踪流程、案例评审流程,都有一个从无到有制定和完善的阶段。


流程实施

推动流程的落实

流程优化

流程的落实过程中,不断的总结经验,及时调整和完善流程。

 


测试质量的保证,是测试团队的职责所需,也是首要标准。

质量指标

前期要确定一些项目中质量的指标,比如交付时间要求、BUG修复率的要求、用例通过率的要求等等。

质量管控

再通过不同的手段来管控,从而实现和达成目标。

在达成的过程中需要研发、产品、测试、项目经理等多个角色的共同推动规范项目研发流程、代码管理流程、缺陷管理流程、测试案例评审流程等等。

并且做好测试分层,从代码级、接口级和ui级别进行测试,从工具自动化和手工多层面进行考虑,从功能、性能、兼容安全性等多纬度进行覆盖。从某些方面来讲,流程的管理,是质量管理的前提。

质量分析

通过对质量的可视化数据分析,从而加强管控机制,改善测试流程,丰富质量指标。

 

 

资源整合

整合测试相关的技术、文档、工具、专利等,成为测试团队的知识资产;整合测试内部、外部的人力、物力、财力,成为测试团队的能量储备。并且对存档的资源进行维护和更新。

资源共享

建立统一的共享平台,将测试资源共享,管理测试用例、管理缺陷、管理测试方法、测试技术工具,减少团队成员的重复劳动。

资源协调

协调测试组内的各种资源,协调组外的各种资源,共同达成目标。

在人力的协调上,一方面需要和团队内、团队外的人员建立良好的关系,取得他们的支持,另一方面,建立跨部门的利益相关性,成为利益共同体。

 

 

通过对风险的识别和分析,选择有效的方式,主动地、有计划地处理风险,以最小成本获得最大保证。

 

风险识别

项目运行的各个环节可能出现的风险都应关注,风险信息收集时需要注重全面性和多样性。

比如需求上存在的缺失,开发实现上可能存在的漏洞,测试案例上可能存在的遗漏,都是项目中常见的风险。

常见信息收集手段如现场访谈、会议研讨、问卷调查等。 

风险评估

通常可以用可能性、严重性,结合可控性、相关性几个指标来描述风险。

  • 比如当判断一个不能固定重现的BUG到底是否重要需要在上线前修复时,可以参考如下风险评测标准:
  • 这个BUG发生的概率有多高?
  • 这个BUG对用户的体验和使用影响有多大?
  • 这个BUG如果在生产上出现了,怎样可以解决和减少影响?
  • 这个BUG可能引发其他的问题吗? 

风险应对

采取各种措施减小风险事件发生的可能性,或者把可能的损失控制在一定的范围内,以避免在风险事件发生时带来的难以承担的损失。

风险应对和控制的四种基本方法是:回避、控制、转移留。

  • 比如新增加了一个功能是展示列表,根据我对项目组产品和开发的了解,他们经常会忘记页面为空白时怎么显示。而这一次我相信如果不提前提出来他们仍会出现这个问题。那么我可以采取如下几种措施:
  • 我知道可能出现这种风险,但是不打算提出来,也不打算搭理他。准备直接带着这个问题上线。——这是回避。
  • 我把风险提出来,然后声明,这个问题一旦出现,需要开发承担责任。——这是转移。
  • 我默默的认为这个风险影响不大,仅保留给自己知悉。后续等问题暴露出来,再去处理——这是自留。
  • 我把这个可能出现的问题提出来,让产品完善需求,开发提前处理。避免提测后这个bug的出现。——这是控制。
阅读更多
换一批

没有更多推荐了,返回首页