软件测试——程序控制流图,McCabe环形复杂度

版权声明: https://blog.csdn.net/dickdick111/article/details/90478058

软件测试——程序控制流图,McCabe环形复杂度

根据下边的程序流程图,完成:

1

1.画出相应的程序控制流图;

根据上述的程序流程图画出程序控制流图

由于一个条件判断语句中有复合条件表达式,故需拆开表示

3

2.给出控制流图的邻接矩阵;

1 2 3 4 5 6 7
1 1 1 1 0 0 0 0
2 0 1 1 1 0 0 0
3 0 0 1 1 0 0 0
4 0 0 0 1 1 0 1
5 0 0 0 0 1 1 1
6 0 0 0 0 0 1 1
7 0 0 0 0 0 0 1

3.计算 McCabe 环形复杂度;

McCabe 环路复杂度为程序逻辑复杂性提供定量测度。该度量用于计算程序的基本独立路径数目,也即是确保所有语句至少执行一次的起码测试数量。

程序控制流图中有7个结点,10条边。

故V(G) = m - n + 2 = 10 -7 + 2 = 5

程序控制流图中有4个单判定结点

故V(G)= d + 1 = 4 + 1 = 5

4.找出程序的一个独立路径集合。

一条独立路径是指,和其他的独立路径相比,至少引入一个新处理语句或一个新判断的程序通路。V(G) 值正好等于该程序的独立路径的条数。

  • 路径1:1-2-4-7
  • 路径2:1-2-4-5-7
  • 路径3:1-2-4-5-6-7
  • 路径4:1-3-4-7
  • 路径5:1-2-3-4-7

猜你喜欢

转载自blog.csdn.net/dickdick111/article/details/90478058