实际项目工作中,刚入职的测试人员经常出现一个问题:“新项目以前从未接触过,不知道如何下手?”鉴于此,我分享一下思路:作为测试人员如何在一个新项目中更好的拆分功能模块并设计出较完善的测试用例。
1. 5W2H分析法了解项目背景
2. 根据产品需求确认功能模块
3. 产品功能的拆分及用例设计
4. 回顾总结及改进提升
一. 了解项目背景
思考:测试人员为什么要了解项目呢?
测试人员进入项目组,首先需要了解项目背景相关知识,根据立项报告、项目章程等文档资料了解具体项目;其次如何分析明确项目背景相关知识,建议运用5W2H分析法,从宏观上认识项目,从测试角度去分析项目背,了解产品雏形,通过质量模型挖掘产品关键点,争取做到充分识别、掌控产品需求。
备注:
实际工作中如果没有项目立项报告或项目章程,需要及时沟通(实际中一般由质量负责人,测试负责代表等主动发起);沟通对象项目核心干系人:项目负责人(如项目经理)、产品负责人(产品经理)、研发负责人(研发经理)等沟通确认,必要时以测试角度形成有助于理解产品需求的特定文档。
了解项目的方法如下(5W2H分析法:深入理解可查阅网络资料):
W:What?该项目是做什么的?对应产品提供的功能或者服务是什么?
W:Why?为什么要做这个项目?即做该项目的价值何在?做该功能有什么价值?
W:Who?项目给谁服务?由谁提供服务?
W:When?项目在什么时间做?产品服务的时间是什么时候?
W:Where?项目在什么地方做?产品的应用场景是什么?
H:How?项目该怎么做?实现用户需求的步骤流程是什么?
H:How much?项目做多少?做该产品需要花费的成本是多少?
根据项目章程,结合5W2H分析法,形成测试初步计划,包含时间、资源(人力、物力、财力)、范围、质量要求等必要信息的描述。在一定程度上,对于项目能否深入的分析,直接影响项目“金三角”(时间、成本、范围)的把控,进而导致产品质量的高低,所以说了解分析项目背景,对于测试人员来说把控和掌握产品需求非常重要。
二. 确认产品功能模块
了解项目背景资料后,根据项目计划及时的参与需求分析阶段的讨论,从用户角度,根据测试理论知识进行分析讨论产品需求,充分理解产品说明书,确保和产品、开发、测试等干系人员对产品描述信息的一致理解。确认产品规格说明书之后,结合项目背景、需求规格说明书形成一份必要的测试文档资料——测试计划;测试人员根据必要的计划,运用测试基础理论方法及工具进行设计测试用例,并及时和产品研发反馈产品质量,不断的做好持续改进。
备注:
现实中,一个高质量的产品是从了解项目开始,需求分析阶段进行核心的讨论分析,不同角色人员从自身定位出发进行落实必要计划,设计、开发、测试阶段对于产品需求进行及时的反馈跟踪,一般根据项目计划按照版本迭代持续改进。确认产品功能模块的过程也是降低缺陷引入概率的过程。
基本工作流:需求分析---->落实计划---->设计执行---->沟通反馈---->持续改进
思考:产品缺陷一般在哪些阶段引入的?那个阶段引入的概率最大呢?
三. 如何分解功能模块
思考:如何分解功能模块更准确完善呢?
1.如何分解产品功能
产品负责人通过产品说明书、产品功能计划将规划的整体产品拆分为可测试的相对独立的大组件模块,根据产品功能优先级排序形成产品需求列表,根据项目计划进行迭代划分,将已计划的需求分配到对应迭代中去,方便开发测试进行实施,开发测试人员通过项目管理工具查看具体迭代对应产品功能列表。
上述过程产品负责人牵头,研发、测试人员积极参与,如下示例图:
2.拆分具体的功能
在产品待办列表中,根据测试基础理论八大设计方法进行对功能模块的拆分细化。在拆分过程中对于不明确的功能及时的和产品负责人、开发负责人进行沟通确认,必要的信息进行文档化落实。
3.分解后的文档转化
通过学习掌握的测试工具,结合测试基础理论设计方法,将拆分后的功能模块转换为文档化的测试用例。在此过程中还会出现反复和产品负责人进行沟通明确的过程。
4.用例编写执行
根据项目中用例设计模板进行用例的文档化编写、管理、维护,并按照计划进行执行。实际工作中可能随着项目的进度测试计划存在着必然的调整,项目过程中还是需要提升和不同角色的人员沟通的过程,同时将项目过程找那个产生的各种问题及跟进的事项以文档形式进行必要的记录和信息的同步通知。
四. 总结及改进提升
以上从项目角度去分解产品功能模块,作为测试人员,在学习了具体的测试基础理论之后,以项目思维将基础理论融入实际工作中,同时在迭代或里程碑节点进行及时回顾总结,即产品本身的质量保证和改进;个人及团队的技能提升。该文档以项目入手,从思路及流程方法上描述如何分解产品模块,在后续的文章中会以具体项目实战的形式,结合项目详述拆分产品功能过程到设计用例实现到个人职业提升进化。
综上所述,结合敏捷项目管理的思想,在工作中切记联系公司实际要求,掌握测试基础理论方法,注重必要的沟通讨论和确认环节,形成有价值的必要文档,以实战为核心,终极目标是将测试思维方法贯穿于实际工作中,保证产品质量,提交使用户高度满意的可交付物。