测试分析的概念
测试分析是建立在对「需求本身」、「用户使用场景」以及对应的「系统架构」和「实现细节」的充分了解的基础上,通过对数据流、状态变化、逻辑时序、功能/性能/兼容性等方面的分析,得出测试点的过程;
在现阶段敏捷开发模式普遍的情况下,唯一不变的就是变化,而测试分析帮助我们快速的分析出应该测试什么、不应该测试什么,从而缩小测试回归范围,提高效率的同时降低风险。
测试分析方法
业务流程分析:描述业务的正向流程
业务状态分析:描述业务对象的状态转换
测试范围分析:需求本身的功能模块(根据需求规则说明去分析)、受影响的功能模块(基于对开发的代码实现的基础上去分析)
基础测试分析过程
01 需求说明书
依据需求说明书梳理出对应的业务功能、状态扭转等测试功能点
02 用户使用场景
依据用户的行为习惯,在需求说明书的基础上,补充用户体验相关测试点
03 业务实现差异性分析
分析不同的调用方的实现差异,剔除无关业务侧,缩小用例执行覆盖的业务线范围
04 代码分析
关注开发实现,分析代码改动范围(大到框架层的公共方法或逻辑,小到接口的具体字段),确认需要回归的模块以及关联模块
测试分析的目的
测试分析的目的是实现通过快速分析出对应的影响范围和风险,达到精准测试的目的。
精准测试是指根据前置的精准分析获取的精准测试用例,测试人员仅需要回归该部分的用例即可达到保证质量的目的,解决了每次代码变更都需要“将基础功能都测一遍”的问题,大大的减少测试人员的回归的工作量的同时,提高了迭代的交付率