先介绍下背景,测试管理者往往是对接多个研发团队,跟研发管理主要集中负责一个研发团队不同,测试管理者在解决问题的时候,往往面临着不同团队的不同问题,没法用统一的解决方案解决问题;这样一些没有深入思考的管理者很容易犯两个错误,一是表面解决,啥问题只要给个方案短期不出,就算解决了;二是简单的拿解决别的团队的方案放在另一个团队强制实施,自以为借鉴成熟团队方案。
    还是先阐述下行文思路,什么是解决问题-->测试工作常见问题-->管理管的是什么
【什么是解决问题】
    管理者的梦想是在团队管理中不遇到任何问题,让团队自己 run。但是理想很丰满,现实都是问题啊。大部分人在解决问题的时候没有深入的分析问题,往往在问题表明就给出了解决方案,短暂没问题后,同样的问题过段时间又出了,管理者第一反应是下属是不是没执行到位,上次不是给了解决方案了吗?下属也委屈,你的方案根本解决不了问题啊,如果团队氛围不是很 open,下属不敢反应真实情况那就更麻烦了,下属没有彻底解决问题的能力,管理者认为下属执行不到位,最后团队的士气就下降,整个团队也拿不到最后想要的结果。这就是为什么一个团队看着都非常努力,但是不出活,管理者也委屈,下属也委屈。
    任何问题只有从根本去解决,才能长期有效的解决问题,管理者要具备深入分析问题根源的能力,然后给出解决方案。但是还不够,什么问题都要一个管理者去解决他自己立马成为瓶颈,因为从根本解决问题需要时间去分析和试错的,所以让整个团队每一个人都具有从根本解决问题的思路,这样团队遇到任何问题,都能够拿出方案,管理者才有更多的精力去做别的事情。
    举两个笔者最近工作中遇到的问题,跟大家说下:
    第一个问题是我看见一个团队最近项目测试质量不高,团队 leader 分析了一下发现是工程师测试 case 设计经常出现不足,造成场景覆盖不全,有遗漏。这个团队 leader 说我们要开发个测试 case 平台,把每位工程师的 case 都记录起来,管理起来,防止遗漏。当时我看见这解决方案的时候差点笑哭,先不说你搞平台需要花多少资源和时间,就算有了能解决这个问题吗?这问题的本身是工程师对项目的理解不够,所以造成测试 case 的涉及存在缺陷,但是这工程师的执行能力肯定是没问题。所以我们要解决根本问题,怎么帮助他评估全,设计 case 覆盖到位。后来我又深入的了解了下这件事,发现这个工程师没设计好 case 的原因是所测业务后端比较复杂,他对后端服务不太了解,因为不属于他们团队。其实这样的 case 在我们团队也经常发生,现在微服务化,每个人能了解的都非常有限,我们团队早已把自己服务的上下游梳理清楚,然后把监控和自动化都加完了,我们团队工程师只需要关注自己的业务更改就好,其他的都是由自动化来帮助完成的,所以我们的工程师虽然也无法全面了解整个业务及服务,但是他不需要担心我上面说的问题了。
    第二个问题是最近笔者所在团队的研发发现了一个线上已经有一段时间的 bug,影响面不是很大,所以一直都没发现。由于这个研发团队是负责一个基础服务,是一个全公司都要用的服务,而且团队成员都比较新,一些基础工作还不是很完善。rd 发现问题后,觉得问题很好改,只动了一行代码,而且毕竟也算是个线上问题,就很着急的上线了。上线后悲剧才刚刚开始,这一行代码不仅没解决上一个问题,把一个线上小概率的问题造成了影响一块业务的大问题了,然后又紧急的修了一下解决了这次大问题,然后又开始引入了其他问题,细节我就不说了,一个问题反反复复四五次才真正的解决完。在发生第二次问题的时候笔者已经站出来说先别着急改,先把目前的上下游的影响梳理下,防止误伤其他服务,毕竟我们这是个基础服务,可是研发认为线上问题必须要赶紧修,越修越悲剧。这个问题就是一个典型的在表明解决问题的 case。
【测试工作常见问题】
    测试管理者经常站在管理角度去解决问题,不去教会工程师怎么从根本去解决问题,也算是带人能力不足的体现,有兴趣的可以读下我上一篇写关于团队管理的文章。下面我说下测试工作中管理者经常要面对的问题:
        1.项目排期紧,测不过来了
        2.测试工程师技术工作渴望非常高,项目太忙一直没时间
        3.跟各角色(rd,pm)合作出现问题,觉得委屈
    其实这几个问题我尝试找到了一个方法解决了上面三个问题。我跟工程师说,我们目前公司是创业公司,业务发展就是速度很快,这也是公司整体向好的表现,所以我们先理解项目多不是一件坏事,那么我们从自身去分析,为什么我们消化项目的速度没那么快,是不是我们个人效率低,是不是没有很好的工具和技术能力帮助到我们,大家还是靠人扛马拉的方法去做事,那效率当然不高了,正好你对技术工作也十分感兴趣,我们能不能通过技术手段提高这个测试效率,然后让研发和产品能够信任我们在短时间内能够消化项目,不会成为项目进展的瓶颈。笔者就是这样的思路去带团队,目前团队整体测试效率及技术能力都非常高,团队目前全员具备自动化的技术能力,两年来团队离职率很低,离职员工涨薪都超过 50%。
【管理管的是什么】
    其实答案我上边已经给出了,管理的根本是人;我这么说肯定会有人误会,说的就是废话,管好人就都好了吗?笔者做管理以来最大的感触是,人是要赋能的,仅仅是管没有用的,你要让他自己觉得有成长,觉得在这个团队有自己的价值,这样才能留住人,做好事。其实管理真的挺累的,累心,两年来我工作大部分时间都是在沟通,嗓子都快费了,只有不断的去教大家怎么具备深入分析问题,从根本解决问题的能力,工程师才会满足自己的成长诉求,才会体现出更多的价值。

    所以最后我想对从事测试管理的伙伴说,赋能团队每一个人,要比管着每一个人要好百倍,从自身去学习根本解决问题的能力。


↙↙↙阅读原文可查看相关链接,并与作者交流