控制流测试是一种属于白盒测试的测试技术。该技术的目的是通过控制结构确定程序的语句或指令的执行顺序。程序的控制结构用于开发程序的测试用例。在这种技术中,测试人员选择大型程序的特定部分来设置测试路径。它主要用于单元测试。由程序的控制图表示的测试用例。
控制流图由节点、边、决策节点、交汇点节点组成,以指定所有可能的执行路径。
用于控制流图的符号
节点
控制流图中的节点用于创建过程路径。基本上,它表示接下来要出现的程序顺序,因此,测试人员可以确定程序发生的顺序。
我们可以在下面的示例中看到第一个节点表示启动过程,下一个过程是在分配值后分配 n 的值,如果它是
18 或大于 18,则有决策节点根据 n 的值决定程序的下一个节点,因此如果它小于 18,则符合条件的程序将执行,否则将执行不符合条件的程序执行。下一个节点是交汇点节点,最后一个节点是停止过程的停止节点。
边缘
控制流图中的边缘用于链接节点的方向。
我们可以在下面的示例中看到所有箭头都用于在适当的方向上链接节点。
决策节点
控制流图中的决策节点用于根据值决定程序的下一个节点。
我们可以在下面的示例决策节点中看到,如果它是 18 或大于 18,则根据 n 的值决定程序的下一个节点,因此如果小于
18,则符合条件的程序将执行,否则将执行不符合条件的程序。
交汇点节点
控制流图中的交汇点节点是至少三个链接相遇的点。
例
public class
VoteEligiblityAge{
public static void main(String []args){
int n=45;
if(n>=18)
{
System.out.println("You are eligible
for voting");
} else
{
System.out.println("You are not eligible
for voting");
}
}
} |
图 - 控制流程图
上面的例子显示了投票年龄的资格标准,如果年龄是18岁或超过18岁,那么打印消息“你有资格投票”,如果它小于18,然后打印“你没有资格投票”。
上面写了此方案的程序,控制流图是为测试目的而设计的。
在控制流图中,开始、年龄、合格、不合格和停止是节点,n>=18 是一个决策节点,用于根据给定值决定哪个部分(如果或其他)将执行。停止节点上存在合格节点和不合格节点的连接。
测试用例是通过程序的流程图设计的,以确定执行路径是否正确。所有节点、交汇点、边和决策都是设计测试用例的基本部分。 |