|
��所谓独立路径,是指包括一组以前没有处理的语句或条件的一条路径。如在图5.19(b)所示的控制流图中,一组独立的路径是
��path1:1 - 11
��path2:1 - 2 - 3 - 4 - 5 - 10 - 1 - 11
��path3:1 - 2 - 3 - 6 - 8 - 9 - 10 - 1 - 11
��path4:1 - 2 - 3 - 6 - 7 - 9 - 10 - 1 - 11
路径path1,path2,path3,path4组成了图5.19 (b) 所示控制流图的一个基本路径集。只要设计出的测试用例能够确保这些基本路径的执行,就可以使得程序中的每个可执行语句至少执行一次,每个条件的取真和取假分支也能得到测试。
|
图5.19 程序流程图与对应的控制流图
|
��从控制流图来看,一条独立路径是至少包含有一条在其他独立路径中未有过的边的路径。由独立路径构成的基本路径集不是唯一的,对于给定的控制流图,可以得到不同的基本路径集。
�� 通常环路复杂性可用以下三种方法求得。
��(1) 将环路复杂性定义为控制流图中的区域数。
��(2) 设E为控制流图的边数,N为图的结点数,则定义环路复杂性为 V(G)=E-N+2。
��(3) 若设P为控制流图中的判定结点数,则有 V(G)=P+1。
��因为图5.19(b)所示控制流图有4个区域。其环路复杂性为4。 它是构成基本路径集的独立路径数的上界。可以据此得到应该设计的测试用例的数目。
�� |
|