工作中遇到很多流程类的测试设计,流程类的测试设计最头疼的应该是“笛卡尔积”的情况,我们如何用最少的测试用例覆盖最全的内容呢,那就是路径分析法之最小线性无关覆盖。
测试设计的步骤:
- 建模---绘制流程图,一个流程图中有一个入口点和一个出口点,若有多个入口点或者出口点需拆分成多个流程图;(这一步很关键,特别考验对需求的理解)
- 设计基础测试用例---使用"路径分析法"得到测试条件;
- 补充测试数据---使用“边界值”“等价类”等确定测试条件;
- 扩展--根据业务等情况综合考虑补充测试条件。
接下来每一步去看,首先是建模,绘制好流程图后,可以使用以下三种方式计算出一个流程最小线性无关路径的数目:
- 一个系统中的线性无关路径IP=边数E-节点数N+2=判定数D+1=区域R+1
注意:入口和出口不作为边数计算
数目只是一个准备工作,我们真正想要的是所有线性无关的路径即设计基础测试用例,这时候可以借助以下算法:
补充测试数据使用“边界值”“等价类”这里不做过多的描述。
扩展:依靠经验和业务熟悉程度补充测试点。
是否已经覆盖了所有情况?
相关情况和影响点是否考虑到?