- 流程分析法主要针对类型属于流程测试的场景,是从白盒测试的路径覆盖分析法借鉴而来的方法。
- 流程分析法怎么用
- 画出业务流程图
- 先从最基本的流程入手,将流程抽象为不同单功能点的顺序执行,考虑了最基本的流程之后再去考虑次要的或异常的流程。
- 注意事项:
- 用圆圈描述系统状态,用箭头描述输入或外部因素(条件)引起的状态迁移
- 正常流程和异常流程都要考虑
- 功能流程涉及多个实体时可以画在一个流程图中,用描述部分说明属于哪个实体
- 跟测试子项无关的分支不考虑
- 定义状态节点和条件分支
- 根据功能流程,针对每一状态节点分析其输入(条件)、下一状态节点和输出
- 分析过程针对功能流程中的各个状态分别分析
- 输入需要考虑被测对象的接口(外部用户输入、周边系统输入、系统内置)
- 输入的分析需详细到参数级别
- 分析系统处理时,外部可控的关键点(用到哪些资源、表格、用户状态的判断等)都可以列入输入
- 输出包含消息输出、后台输出、本地记录等
- 在表中标出系统不处理的输入或没有必要测试的输入
- 分支的优先级根据两个原则来选取:分支的使用频率和分支的重要程度
- 确定测试路径
- 根据路径的优先级和测试进度选取需要测试的路径
- 对于有向图,通常采用基本路径覆盖法。对每条基本路径设计一个测试用例
- 环路复杂度:有向图的闭合区域数 + 1
- 计算环路复杂度时,入口点要求入度(进入分支数)为 0 ,出度(出发分支数)为 1 。出口点要求出度为 0 ,入度为 1 。如果入口点不符合要求可以在入口点之上增加一个节点作为纯入口点。出口点亦然。
- 基本路径:至少包含一条在其他基本路径中没有包含过的路径
- 基本路径相当于所有路径空间的一组基,其他任意路径都可以由这些基本路径组合而成。
- 基本路径数=环路复杂度
- 构造测试用例
- 根据选定的测试路径,结合等价类划分法、边界值分析法确定输入、输出。
- 流程分析法适用于有先后顺序的测试(业务流程、安装流程)。测试流程之后还要测试单个的功能。
- 示例(电脑上QQ软件的安装)
- 安装向导->许可协议->选择组件->选择安装位置->点击安装->完成;