如何做好测试策略
测试策略的输出:做对的事!
测试计划的输出:把事做对!
测试策略不是测试计划。
我们既可以先有测试计划再有测试策略,也可以先有测试策略后有测试计划。两者有什么区别呢?
如果是先有测试计划再有测试策略,那么我们就是在制定一个“大测试项目计划”。这个测试计划是一个项目工作计划,它指明我们计划开始的是整个项目计划。这个项目计划会先划定时间来了解项目的目标,项目的要求,然后再划出一段时间来依据项目目标和项目要求,项目拥有的资源来制定项目的测试策略。
如果是先有测试策略再有测试计划,那么我们是在制定一个“测试执行活动计划”。这个测试计划会以测试策略作为输入,来确定测试执行活动所需要的资源,时间分布,测试活动序列。
总得来说,通过TestBird的经验来说,APP测试计划会更多包含:测试活动的先后序列,资源调度分配的安排。而测试策略会更多包含:测试重点的确立,测试技术类型的分析和选取。
以我的经验和方式,制定测试策略会先从项目的需求和约束要求入手,作为开始测试策略分析制定的输入。在正式分析制定测试策略的第一步时,会先进行RBT基于风险的分析,使用RBT的方法分析得出测试目标的优先级;第二步,分析项目已有的技术现状,评估哪些现有的测试技术能满足此次项目;第三步,按优先级对测试目标的达成所需要的不同的测试技术,测试活动组合进行匹配。例如:有三个测试目标A,B,C,现有测试技术有D1,D2,D3。
由于风险系数的先后顺序为A,B,C,因此,我会给目标A配置D1,D2,D3三种测试活动的建议,给目标B配置D2,D3的测试活动,给C配置D3的测试活动。测试项目经理拿到我的测试策略后,会在测试计划中安排相应的人力配置,安排相应的时间计划。
关于更多测试策略制定的方法,应该跳出测试来学习和分析。
因为策略一词最早来自战争,来自商业。因此,如何从理论高度明白如何做好测试策略,就应该多看一些军事策略和商业策略的资料,学会分析设计策略的工作方法和工作过程,才是最重要的。
如果,你真能在测试工作中,做好测试策略,并真正以测试策略作为测试计划的输入,指导后续测试计划的方向,那么你得到的锻炼将不仅仅是找编程BUG的测试技能,而是真正人类智慧思想的本质和真谛,这些技能是让你思想和能力上几个层面的重要基石。即使未来你不干测试了,你也一样是一个智者。因为你学会了如何决定做对的事!