我的2015

2015,勤于学习,懒于总结,学到了很多、进步很多,却疏于总结,公众号没有发文、博客没有更新。Denial的总结发出来时,包括他告诉我写总结的好处时,我都在努力回避。今天读到Joseph的总结后,我还是想回避。可大脑却不听使唤起来,上午一边打扫房间,脑子里却一边不由自主地开始回想起这一年的收获来。正像我在coaching时一直说的那样,“探索时,要关注你的feeling,因为你正在一条寻找到bug的路上”,我知道我的hunches来了,那种不可言明的tacit knowledge正在发挥作用,它告诉我,拿起笔来,不能再偷懒下去了。

测试咨询

GE Surgery北京团队:4~10月

ZTE UNC南京测试团队:1~12月

今年深感荣幸的是有机会与一线的测试人员一道结对测试,帮助他们提升测试技能,在与GE Surgery合作的半年以及与ZTE UNC合作的一年之中,我自己也进步很多,这是作为咨询顾问的优势,和你的客户互相学习、共同进步。

从大的方面讲,这一年咨询的工作内容有这么四个方面:

 

1. 测试分析与测试设计

虽说我从2008年就提出了MFQ&PPDCS这一套测试分析与测试设计的框架,之后也陆续进行了很多次的会议或培训的分享,期间也指导过零星的测试人员使用这个方法,但还缺少大规模团队从组织一级的学习和运用,今年感谢GE Surgery和ZTE UNC这两个团队的测试人员,当然也感谢GE成都、ZTE西安/上海/深圳合作过的团队,使得我这个夙愿得以实现。

通过结对测试,将MFQ&PPDCS应用于实际项目中,我们发现了很多测试团队或个人筮待提高的测试技能,比如测试分析的能力,Asking right questions的能力,Gathering Testing Ideas Quickly的能力,Telling Testing Story的能力, Self Testing Management的能力等等。最初我只是希望通过咨询、通过结对测试把MFQ&PPDCS这个方法传递给别人,后来慢慢地意识到,MFQ&PPDCS不单单是一个方法,更多的充当了一个媒介的作用,透过它,可以帮助测试人员认识到自己还欠缺的测试技能,从而在一次次的MFQ&PPDCS练习中不断地提升个人的测试技能(leveling up your testing skills)。

我在咨询中,恪守一个原则,就是尽量不谈方法,只谈如何更好地做测试。我们总是先选取一个真实的特性,然后一步一步分析,一起讨论,一起画model,一起识别问题和风险,当练习过后,我再告诉这个tester你刚刚用了哪些测试方法,它叫什么名字,哪些地方还可以改进。之所以这么做,一个原因是测试是一门基于实践的科学,我认为先去实践,从实践中不断感悟和摸索,再学习理论上的所谓的方法和概念,是最有效的方式;另外一个很重要的原因是测试是基于上下文的,没有普适的方法,尽管我认为MFQ&PPDCS可以应用在任何领域的测试中,但每个项目、每个特性、每个人都不一样,导致在实际应用MFQ&PPDCS时需要根据情况灵活应变,这也是正是咨询师发挥作用的地方,传递给别人的不是一套固定的方法,而是如何灵活运用方法的思路。

今年感到欣慰的是,通过结对、培训、workshop,已经有更多的人学会并使用MFQ&PPDCS,ZTE的胡部甚至将MFQ&PPDCS作为公司内部测试设计教练的考核内容之一,涌现出多位佼佼者,其中李春才对MFQ&PPDCS的掌握远远超出了我的预期,为了有所表示,一向讨厌各种证书的我也给他颁发了一张证书,纯手工制作哦:)

MFQ&PPDCS是基本功,做到一定程度,就开始影响测试的周边了,比如可以更好地开展Preventive Testing,春才已经在需求阶段发挥了测试人员更大的作用,探索测试分析与实例化需求的结合;另外,也有人开始探索MFQ&PPDCS如何与RBT(Risk Based Testing)更好地结合、如何与ET(Exploratory Testing)更好地结合等等。

2. 探索性测试

探索性测试的coaching主要从两个角度,一个是组织级的SBTM(Session Based Test Management)实施,一个是个人级的Testing Mindset和Skill Set。

今年的ET咨询总的来说都不够深入,局限在概念和方法的引入、以及局部实践方面,并没有在组织内大规模应用起来。这一方面和咨询师的投入程度有关,另一方面也与SBTM本身推广的难度有关。SBTM本身说起来并不难,就像Scrum说易行难一样,需要管理层管理思想的转变、测试人员技能的提升、组织文化和氛围的支撑等等,这个转型过程也需要教练的大力投入。

不过今年的小范围ET实践,也有很多不错的尝试。比如GE Surgery的ET Workshop和ET互叉(不同team的人用ET互相challenge对方的测试成果),ZTE的Group ET(多个ET Pair,选择同一个或不同的charter),都很有趣。今年我在一次ET workshop上甚至尝试了18人共同做一个session的壮观场面。

除了coaching ET的基本功(比如taking notes,chartering, debriefing等)外,还有机会与ZTE的两位测试人员结对开展了一周的深入ET实践,我们体验了一个特性端到端的完整的ET过程:从选择一个被测特性开始,到熟悉特性、搭建环境、开始一个个session的测试、session 的总结、测试策略的制定、bug的上报、基于风险的调整、迭代的质量评估,一直到我们认为测试可以结束了。期间,我们试验了用ego彩色快进行可视化的测试跟踪和总结,我们仔细探讨了每一个bug的从可疑、到发现、到追踪、到上报的各个环节涉及的测试技能,我们分析了每一个人的测试习惯和测试深度图,找到了可圈可点的地方。在这一周中我又发现了一个新的test oracle heuristic,引入了一个新的OO(在TBS以外)来记录测试过程,并就这两点与James Bach和Michael Bolton进行深入的讨论,虽然他们好像并不认可,我和我的客户都深入理解这个点并愿意在实践中去应用,这就很好了,以后有机会我在当面和James以及Michael讨论吧。

3. 测试评估

这一部分我习惯的叫法是测试过程改进(TPI),但是鉴于TPI已经被Martin Pol等人用于专门的一种测试评估方法了,我就简称为测试评估吧,因为我现在做测试评估时几乎不使用任何现有的测试评估模型,不论是TPI还是TMMi也好,按照这些模型去评估只会限制我的思路,我更愿意结合自己的经验以及当前被评估项目的实际特点,去创造性的做这件事。

相比于做测试分析的咨询或探索性测试的咨询而言,做测试评估对咨询师来说是一个非常有挑战的活儿,也绝对是个体力活儿。就好像连续1、2周持续地投入到一个纷繁复杂的被测对象中去分析、分析、不断地分析,最后找出那么几个非常重要的(其中至少有那么一两个别人都不知道的)bug一样,每次评估结束我都要大口喘气、歇上几天才恢复正常。

给ZTE UNC测试一部做的测试评估中规中矩,访谈所有角色、review我能找到的所有文档、现场观摩,最后找出17个“bug”,提出7个改进方向,当然最终我们实际做了其中的3个(TAD,ET,RBT)。

给GE X-Ray项目做的评估不仅仅是测试评估了,而是研发项目评估,最大的亮点是项目老大高总几乎是全程和我一起做的这次评估,事先没有评估计划,每天做什么由前一天的结果来讨论决定(这完全符合探索性测试的标准啊),根据需要我们就会找相应的人交流、找相应的文档阅读、观摩相应的环节、找相应的人结对测试,每天的晚饭时间,就是针对当前识别出关键的点讨论可能的解决办法。这种Stakeholder全力介入的评估方式显然颠覆了我以前对项目评估方法的认识,并因此体会到更多不一样的地方。

4. 基于风险的测试

组织一级RBT并没有作为今年咨询的重点,因为相比于测试设计和测试执行能力的薄弱来说,RBT的提升并没有那么迫切。另外,RBT说起来非常简单,更多的是要投入到实践中去耐心地发现问题、逐步改进。

当然,这期间也有个别人认真思考并开始实践RBT,透过他们给我的反馈,我也看得出他们都各自有着一些自己的创新的做法。

个人级的RBT理念一直贯穿在我平常的coaching中,无论是做好测试分析还是探索性测试,RBT都是必不可少的,每个人都是自己测试的管理者,因为没有人比你更了解你的测试、更适合管理你的测试了。所以,只要一有机会,我就会强调基于风险的重要性并立即展开实践。个人级的RBT或者叫特性级的RBT是基石,基石不牢固,何谈做好组织级或产品级的RBT呢?

不过,今年还是有机会在ZTE做了一周的RBET(基于风险的探索性测试),我们一起选了一个被测特性,除了实践常规的ET技能外,这回我们加上了很多RBT的内容,比如识别risk list, risky area,进行风险矩阵分析,更新testing dashboard,基于风险的testing adjustment等等。

测试培训

今年继续做了几次关于测试设计和探索性测试的培训,培训地点今年跨出了大陆,到台北讲了一次,不过授课语言还都是中文,希望今后有机会可以进行英文授课。培训的框架大体上变化不大,但是引入了一些我在咨询中体会到和学习到的新东西。虽然是培训,我也是竭尽全力地希望学员能学到类似我在给别人做咨询时传递的技能,比如主动地思考和问问题。我经常会即兴地给学员一些小的challenge游戏(今年还成功地把Tarot牌用于课堂上),我也会尽量选用学员手头上的测试特性来做KYM的练习。

感觉这一年我的培训技能最大的一个提升就是游戏设计能力,这要得益于6月份去美国跟随大师Jerry Weinberg学习(PSL Workshop),那一周在大师精心设计过的多个游戏环节中挣扎。在这之后的数个月里,时不时地就会想起其中的某些片段,再和当时自己的教学课程联系起来,不知不觉就有很多好的idea涌现出来了。今年我设计了很多小的游戏,用在我的coaching和training中,可客户不知道的是,很多小游戏我其实只是在上课的前一天突然想到的,就迅速的设计出来并且立马实施了。回想起几年前我设计和引导游戏的能力,现在显然高效了许多。记得那个著名的骰子游戏,从2011年第一次和James一起玩,到我可以游刃有余地引导学员一起玩这个游戏,中间经历了1、2年的时间,需要不断地思考和改进。后来设计和酝酿一款新的游戏也要数个月的时间,而今只要1、2天就可以了,禁不住要窃喜一下。

参加会议

今年在三个会上进行了分享:AHA,ChinaTest,StarWest。分享之余,对于我来说,这几年越发的感到,通过参会学到的东西有限,今年参会方面应该会收敛很多。

AHA由于它的跨界性,还是能了解到非测试领域、非IT领域的一些东东,虽然都不是很深了。能领略到各个领域的一些牛人的风采,也是不错的。

今年的ChinaTest,再一次和Michael聊得很high,围绕测试总是有聊不完的话题。尤其是在StarWest上,我和Michael、James专门挑了一个晚上,尽兴畅聊,我用James做的小工具记录了我观察到的一个ET Session,感谢他们两个如此有耐心地听我为他们讲解这个session的每一个细节。后来,我把这个记录测试的方法三维化了。

关于2016

2012年起成为一名独立咨询顾问,一晃4年过去了,每年都学到很多新的东西,2016年,培训、咨询、参会分享这些事情还会继续深入下去,看到自己能够帮助到别人更好地做测试,没有什么比这个更令人感到满足了。

2015年也让我更加坚定地认识到,很多好的测试方法、测试思维和测试理念确实能够帮助到很多的测试人员,应该把这些内容以更加广泛的形式传播出去,先以写一本测试分析的书开始吧(希望能坚持写完,呵呵)。

Comment Box is loading comments...