场景法测试用例设计方法主要用于事件触发流程,当某个事件触发后就形成相应的场景流程, 不同的事件触发不同顺序和不同的处理结果,就形成一系列的事件结果。也可以将这一系列的事件 触发流程看成不同的路径,使用路径覆盖的方法来设计测试用例,故场景分析法也称为流程分析法。 场景法测试用例设计方法的步骤如下: (1)画出业务流程图。 (2)设置功能路径优先级。 (3)确定测试路径。 (4)选取测试数据。 (5)构造测试用例。
首先将系统运行过程中所涉及到的各种流程图表化,可以先从最基本的流程入手,将流程抽象 为不同功能的顺序执行。在最基本流程的基础上再去考虑次要或者异常的流程,这样将各种流程逐 渐细化,既可以逐渐加深对流程的理解,还可以将各个看似孤立的流程关联起来。完成所有流程的 图表化后就完成了所有路径的设定。 找出所有的路径后,下面的工作就是给每条路径设定优先级,这样在测试时就可以先测优先级 高的,再测优先级低的,在时间紧迫的情况下甚至可以考虑忽略一些优先级低的路径。优先级根据 两个原则来选取:一是路径使用的频率,使用越频繁的优先级越高;二是路径的重要程度,失败对 系统影响越大的优先级越高。将根据两个原则分别得到的优先级相加,就得到了整个路径的优先级。 根据优先级的排序就可以更有针对性地进行测试。 为每条路径设定好优先级后,接下来的工作就是为每条路径选取测试数据,构造测试用例。一 条路径可以对应多个测试用例,在选取测试数据时,可以充分利用边界值选取等方法,通过表格将 各种测试数据的输入、输出对应起来,这样就完成了测试用例的设计。 【实例】使用场景分析法对邮件账户添加功能进行设计测试用例。邮件账户添加功能的需求规 格如下:(1)设置邮件账户的显示名,如图 8-4 所示,显示名为 1~255 个字符。
设置了显示名后可单击“下一步”按钮;如果单击“取消”按钮,则弹出对话框询问用户是否 真的要退出,如果用户选择“是”则退出向导;如果选择“否”则回到本对话框。如果不输入任何 内容或输入空格,则无法单击“下一步”按钮。 (2)设置电子邮件地址。 地址信息为 1~255 个字符,如图 8-5 所示。有效的电子邮件地址格式需包含@符号,且@符 号不在字符串的首部或尾部,其前可以是任意字符,其后可以是字母、数字及字符“.”,但字符“.” 不能在字符串的尾部。
如果用户输入的电子邮件地址不符合以上格式要求,则系统在用户单击“下一步”按钮后弹出 对话框,提醒用户输入的地址可能无效,是否继续使用该地址。此时若用户选择“是”则进入下一 步;若选择“否”则回到本对话框,而且输入的电子邮件地址处于全部选中状态。 如果单击“取消”按钮,则弹出对话框询问用户是否真的要退出,如果用户选择“是”则退出 向导;如果选择“否”则回到本对话框。 (3)配置电子邮件服务器名。 邮件接收服务器是可选项,分别提供 POP3、IMAP、HTTP 供用户选择,如图 8-6 所示。如果 用户选择了 POP3 或 IMAP 邮件接收服务器,则需设置“接收邮件服务器”和“发送邮件服务器” 信息,设置的服务器信息由 1~255 个字符组成。 图 8-6 配置电子邮件服务器 如果用户选择了 HTTP 邮件接收服务器,则需要选择 HTTP 邮件服务提供商,如果服务提供商 选择了 Hotmail,则无须再填写其他内容。
如果选择了“其他”HTTP 邮件服务提供商,则需要用户输入接收邮件服务器信息,该信息由 1~255 个字符组成,如果单击“取消”按钮,则弹出对话框询问用户是否真的要退出,如果用户选择“是”,则退 出向导;如果选择“否”,则回到本对话框。 (4)输入服务提供商提供的账户名称和密码。 其中账户名为 1~255 个字符,必填项;密码为 1~255 个字符,可以不用填写,如果选择“记 住密码”复选项,则需要输入密码,否则不必输入,如图 8-9 所示。“使用安全密码验证登录”等 为选填项。如果单击“取消”按钮,则弹出对话框询问用户是否真的要退出,如果用户选择“是”, 则退出向导;如果选择“否”,则回到本对话框。 (5)完成新账户的添加。 在向导完成对话框单击“完成”按钮,完成新账户的添加。单击“取消”按钮,则弹出对话框询 问用户是否真的要退出,如果用户选择“是”,对话框则退出向导;如果选择“否”,则回到本对话框。 步骤 1:根据需求画出业务流程图,步骤 2:设置路径的优先级,本例中对所有的测试用例进行测试,实际过程中可以根据实际情 况对路径的优先级进行排序。 步骤 3:确定测试路径,步骤 4:选取测试数据,构造测试用例,在本实例中只以场景 1 为例进行测试用例设计,场景法测试用例设计的重点是测试业务流程是否正确,测试时需要注意的是,业务流程测试没有 问题并不代表系统的功能都正确,还必须对单个功能进行详细的测试,这样才能保证测试的充分性。