控制流程测试

控制流测试是一种白盒测试下的测试技术。该技术的目的是通过控制结构确定语句或程序指令的执行顺序。程序的控制结构用于开发程序的测试用例。在该技术中,测试者选择大程序的特定部分来设置测试路径。它主要用于单元测试。测试用例由程序的控制图表示。

控制流图由节点,边缘,决策节点,结节点形成,以指定所有可能的执行路径。

用于控制流图的符号

  • 节点
  • 边缘
  • 决策节点
  • 连接节点

节点

控制流程图中的节点用于创建过程路径。它代表了接下来程序的程序顺序,测试人员可以确定程序的发生顺序。

我们在下面的示例中可以看到第一个节点表示启动过程,下一个过程是在赋值后分配n的值,如果是18或更大的值,则根据n的值确定过程的下一个节点的决策节点 如果小于18不符合条件的程序执行,那么它是合理的,程序将以其他方式执行。下一个节点是结节点,最后一个节点是停止节点以停止该过程。

边缘

控制流图中的边用于链接节点的方向。在下面的示例中可以看到,所有箭头都用于在适当的方向上链接节点。

决策节点

控制流程图中的决策节点用于根据值确定过程的下一个节点。可以在下面的示例中看到决策节点根据n的值确定过程的下一个节点,如果它是18或大于18,那么如果小于18,则合格的过程将执行,否则执行不合格的过程。

连接节点

控制流图中的结点节点是至少三个链路相遇的点。

示例

public class VoteEligiblityAge{  

    public static void main(String []args){  
        int n=45;  
        if(n>=18)  
        {  
            System.out.println("你有投票资格。");  
        }else{  
           System.out.println("你没有投票资格。");  
        }  
    }  
}

控制流程图

控制流程图

上面的例子显示了投票年龄的资格标准,如果年龄是18岁或者超过18岁,那么打印消息“你有投票资格”,如果它少于18,则打印“你没有投票资格”。

此方案的程序如上所述,控制流程图是为测试目的而设计的。

在控制流图中,startagequalifiednot eligiblestop是节点,n> = 18是决定哪个部分(if或else)将根据给定值执行的决策节点。符合条件的节点和不符合条件的节点的连接在停止节点上。

通过程序的流程图设计测试用例,以确定执行路径是否正确。所有节点,连接点,边缘和决策都是设计测试用例的基本部分。


上一篇:数据流测试

下一篇:分支覆盖测试

关注微信小程序
程序员编程王-随时随地学编程

扫描二维码
程序员编程王

扫一扫关注最新编程教程