【转】场景法设计测试用例

转自:http://blog.sina.com.cn/s/blog_4aa1f1570100acvb.html

(一)场景法原理

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

在测试一个软件的时候,在场景法中,测试流程是软件功能按照正确的事件流实现的一条正确流程,那么我们把这个成为该软件的基本流;而凡是出现故障或缺陷的过程,就用备选流加以标注,这样的话,备选流就可以是从基本流来的,或是由备选流中引出的。所以在进行图示的时候,就会发现每个事件流的颜色是不同的。

基本流和备选流:如下图所示,图中经过用例的每条路径都用基本流和备选流来表示,直黑线表示基本流,是经过用例的最简单的路径。备选流用不同的色彩表示,一个备选流可能从基本流开始,在某个特定条件下执行,然后重新加入基本流中(如备选流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

下面是场景法的基本设计步骤:

根据说明,描述出程序的基本流及各项备选流

根据基本流和各项备选流生成不同的场景

对每一个场景生成相应的测试用例

对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值

(二)场景法例子

1、在线购物系统

我们都在当当网或china-pub华章网上书店都订购过书籍,整个订购过程为:用户登录到网站后,进行书籍的选择,当选好自己心仪的书籍后进行订购,这时把所需图书放进购物车,等进行结帐的时候,用户需要登录自己注册的帐号,登录成功后,进行结帐并生成订单,整个购物过程结束。

那么我们通过以上的描述,从中确定哪是基本流,哪些是备选流:


基本流


用户登录到网站,书籍的选择,进行订购,把所需图书放进购物车,等进行结帐的时候,登录自己的帐号,登录成功后,生成订单


备选流1


帐号不存在


备选流2


帐号错误


备选流3


密码错误


备选流4


无选购书籍


备选流x


退出系统

根据基本流和备选流来确定场景:


场景1-购物成功


基本流


场景2-帐号不存在


基本流


备选流1


场景3-帐号错误


基本流


备选流2


场景4-密码错误


基本流


备选流3


场景5-无选购书籍


基本流


备选流4

我们来设计用例

对于每一个场景都需要确定测试用例。可以采用矩阵或决策表来确定和管理测试用例。

下面显示了一种通用格式,其中各行代表各个测试用例,而各列则代表测试用例的信息。

本例中,对于每个测试用例,存在一个测试用例ID、条件(或说明)、测试用例中涉及的所有数据元素(作为输入或已经存在于数据库中)以及预期结果。

通过从确定执行用例场景所需的数据元素入手构建矩阵。然后,对于每个场景,至少要确定包含执行场景所需的适当条件的测试用例。例如,在下面的矩阵中,V(有效)用于表明这个条件必须是 VALID(有效的)才可执行基本流,而 I(无效)用于表明这种条件下将激活所需备选流。下表中使用的“n/a”(不适用)表明这个条件不适用于测试用例。


测试用例ID


场景/条件


帐号


密码


选购书籍


预期结果


1


场景1:购物成功


V


V


V


成功购物


2


场景2:帐号不存在


I


n/a


n/a


提示帐号不存在


3


场景3:帐号错误


I


V


n/a


提示帐号错误,返回基本流步骤2


4


场景4:密码错误


V


I


n/a


提示密码错误,返回基本流步骤3


5


场景5:无选购书籍


V


V


I


提示选购书籍,返回基本流步骤5

我们看到以上表中,是把每个场景成立的条件进行了分析,基本上已经明确了测试用例的数量,现在只要把真实数据填充上,那么整个测试用例就完成了。


测试用例ID


场景/条件


帐号


密码


选购书籍


预期结果


1


场景1:购物成功


xu


123456


《软件测试艺术》与

《软件测试自动化》


成功购物


2


场景2:帐号不存在


zhang


n/a


n/a


提示帐号不存在


3


场景3:帐号错误


zhou


123456


n/a


提示帐号错误,返回基本流步骤2


4


场景4:密码错误


xu


123$%^


n/a


提示密码错误,返回基本流步骤3


5


场景5:无选购书籍


xu


123456


时间: 2024-12-03 05:43:26

【转】场景法设计测试用例的相关文章

基本路径法设计测试用例

基本路径法是白盒测试中使用最为广泛的方法.以下将介绍一下基本路径法如何使用. 基本路径法设计测试用例的步骤基本如下 1.由程序的源代码作为基础导出控制流图 2.计算控制流图的环路复杂度 3.确定基本路径 4.根据基本路径设计测试用例 接下来我举个例子 1 Int IsLeap(int year) 2 { 3 if (year % 4 == 0) 4 { 5 if (year % 100 == 0) 6 { 7 if ( year % 400 == 0) 8 leap = 1; 9 else 10

使用正交表法设计测试用例

1.案例:字符属性设置程序需求:窗体中有多个控件(字体.字符样式.颜色.字号),每个控件有多个取值 字体:仿宋.楷体.华文彩云字符样式:粗体.斜体.下划线颜色:红色.绿色.蓝色字号:20号.30号.40号 使用步骤:1.根据需求形成因子状态表----->因子:控件名称 状态:每个控件对应的取值2.确定所采用的正交表3.将正交表中的字母用文字代替4.一行就是一条测试用例 2.案例:对某人进行查询假设查询某个人时有三个查询条件(查询条件仅考虑填写和不填写两种情况): 根据" 姓名"

等价类划分法设计测试用例

序内部结构,设计测试用例的唯一依据是软件需求规格说明书. 等价类 所谓等价类,是输入条件的一个子集合,该输入集合中的数据对于揭示程序中的错误是等价的.等价类又分为有效等价类和无效等价类.有效等价类代表对程序有效的输入,而无效等价类则是其他任何可能的输入(即不正确的输入值).有效等价类和无效等价类都是使用等价类划分法设计用例时所必须的,因为被测程序若是正确的,就应该既能接受有效的输入,也能接受无效输入的考验. 划分等价类的标准: 1.完备测试.避免冗余; 2.划分等价类重要的是:集合的划分,划分为

正交实验设计法设计测试用例

1.正交表设计测试用例 2.PICT工具相关 什么是pict工具 http://baike.baidu.com/link?url=TW0LG9JTYODOWroQu5LCeiQzCvOTv3ZVGDrhm_WvBUmO3u2qGJ4zcVpogvpFX7iWyqFthaFtd8PEPbcTWrphaa pict工具的使用 http://jingyan.baidu.com/article/2fb0ba4049ac5400f2ec5fb1.html pict工具相关 http://blog.csdn

因果图法设计测试用例

一.使用因果图的好处 1 考虑了多个输入之间的相互组合.相互制约关系 2 能够帮助我们按一定步骤,高效率地选择测试用例,同时还能为我们指出,程序规格说明描述中存在着什么问题 二.利用因果图导出测试用例需要经过的一般步骤 1.分析程序规格说明的描述中,哪些是原因,哪些是结果. 2.分析程序规格说明的描述中语义的内容,并将其表示成连接各个原因与各个结果的因果图 3.在因果图上使用若干个特殊的符号标明特定的约束条件 4.把因果图转换成判定表 5.把判定表中每一列表示的情况写成测试用例三.因果图基本符号

第05讲、使用因果图法设计测试用例

一.应用场合 ? 在一个界面中,有多个控件,测试的时候要考虑控件的组合关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组合会产生什么样的输出组合,使用因果图法. 二.因果图核心 1.因--原因,输入条件 2.果--结果,输出结果 使用图形的方式,分析软件输入和输出的对应关系 三.图形符号 1.基本图形 表示输入和输出的对应关系 ? (1)恒等 若a=1,b=1 若a=0,b=0 ? (2)非 若a=1,b=0 若a=0,b=1 ? (3)或 若a=1,或b=1,或c=1,则d

测试用例设计方法---场景法

掌握场景法设计测试用例 掌握场景法的使用范围 1.为什么学习场景法用户角度:用户平时使用的不是单个功能,而是多个功能组合起来进行使用 测试人员角度:平时测试的都是单个功能点进行测试,为了保证测试的全面性,也要从用户的角度出发也要对产品多个功能的组合进行测试. 2.场景法是什么场景法就是模拟用户操作软件时的场景,主要用于测试多个功能之间的组合使用情况. 3.场景法中两个重要的概念 基本流按照正确的业务流程来实现的一条操作路径(模拟正确的操作流程)备选流导致程序出现错误的操作流程(模拟错误的操作流程

设计测试用例的步骤

一.因果图法设计测试用例的步骤:1.分析软件规格说明描述中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件), 并给每个原因和结果赋予一个标识符.2.分析软件规格说明描述中的语义,找出原因与结果之间, 原因与原因之间对应的关系,根据这些关系画出因果图.3.标明约束条件:由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件.4.把因果图转换为判定表.5.把判定表的每一列拿出来作为依据设计测试用例

13、场景法

什么是场景法? 场景法就是模拟用户操作软件时的场景,主要用于测试系统的业务流程.>当拿到一个测试任务时,我们并不是先关注某个控件的边界值.等价类是否满足要求,而是先要关注它的主要功能和业务流程是否正确实现,这就需要使用场景法来完成测试.>当业务流程测试没有问题,也就是该软件的主要功能没有问题时,我们再重点从边界值.等价类等方面对控件进行测试 简单来说: 主要用来测试业务流程:分为基本流(正确流程)和备选流(错误流程)注意:还要补充一些异常情况:     在冒烟测试中主要采用场景法来测试: 场景