关于场景法的相关概念,现在的软件几乎都是用事件触发来控制流程的比如GUI软件、游戏等。事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果便形成了事件流。这种在软件生命周期设计方面的思想也可以引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试涉及者设计测试用例,同时使测试用例更容易理解和执行。

为什么场景法能如此清晰的描述整个事件? 因为现在的系统基本上都是由事件来出发控制流程的。如:我们申请一个项目,需要先提 交审批单据,再由部门经理审批,审核通过后由总经理来最终审批,如果部门经理审核不 通过,就直接退回。每个事件触发时的情景便形成了场景,而同一事件不同的出发顺序和处理结果形成了事件流。这一系列的过程我们利用场景法可以清晰的描述清楚。

基本流与备选流:

1)在场景法中,测试流程是软件功能按照正确的事件流实现的一条正确流程,我们把这个称为软件的基本流;

2)出现故障或缺陷等其它事件的过程,就用备选流加以标注。这样,备选流或是从基本流来的,或是由其它备选流中引出来的。 场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有的基本流和备选流,如下图所示:

ALM

 

如图所示,从一个软件生命周期流程开始,经过用例的每条路径都可以用基本流和备选流来表示。 黑直线表示基本流,是经过用例的最简单的路径。备选流用不同的彩色表示,一个备选流可能从基本流开始,在某个特定条件下执行,然后重新加入基本流中(如备选流1、3);也可能起源于另一个备选流(如备选流2),或者终止用例而不再重新加入到某个流(如备选流2和4)。

可以确定以下用例场景

场景1)基本流;

场景2)基本流,备选流1;

场景3)基本流,备选流1,备选流2;

场景4)基本流,备选流3;

场景5)基本流,备选流3,备选流1;

场景6)基本流,备选流3,备选流1,备选流2;

场景7)基本流,备选流4;

场景8)基本流,备选流3,备选流4。