基本路径测试就是在程序控制流图的基础上,通过分析控制构造的环形复杂性,导出基本可行路径集合,从而设计测试用例的方法。
基本路径测试具体方法如下:
对复杂性程度高的程序做到覆盖所有路径(测试所有可执行路径)是不可能的。根据独立路径概念,某一程序的独立路径是指从程序人口到程序出口的多次执行中,每次至少有一个语句集(运算、赋值、输入/输出或判断)是新的或未被重复的。若用流图描述独立路径就是在从入口进入流图后,至少走过一个弧。
在不能做到覆盖所有路径的前提下,如某一程序的每个独立路径都被测试过,可以认为程序中每个语句都被检验了,即达到语句覆盖,这种测试即通常所说的基本路径测试方法从基本集导出的测试用例保证对程序中每条执行语句至少执行一次。
基本路径测试用例设计步骤如下
(1)绘制程序控制流图。
(2) 通过分析环形复杂性,计算圈复杂度,导出程序基本路径集合中的独立路径条数,这是确定程序中每个可执行语句至少执行一次所必需的测试用例数目的上界。给定流图的圈复杂度 V(G)定义为V(G)=P+1,P 是流图G中判断节点的个数,如图所示。
(圈复杂度V(G)也可以V(G)=E-N+2,其中E是边的总数量,N是节点总数量)
(3)导出测试用例:根据环形复杂性和程序结构设计用例数据输入和预期结果
(4)准备测试用例:确保基本路径集中的每一条路径的执行。