小马的测试用例那些事 测试用例设计之场景图法

老马 · 2018年11月09日 · 2193 次阅读

定义

现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上所有基本流和备选流。


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

应用范围

1) 基本上每个软件都会用到这种方法,因为每个软件后面都有业务的支撑

2) 比较常见的有: 网上购物流程, ATM 机取款流程等

使用步骤

1) 画出需要测试路径的流程图 (一般选择工具 Office Visio)

2) 分析基本流和备选流

3) 根据基本流和备选流设计测试用例

案例

基本事件流:

用户向 ATM 提款机中插入银行卡,如果银行卡是合法的,ATM 提款机界面提示用户输入提款密码;

用户输入该银行卡的密码,ATM 提款机与 MainFrame 传递密码,检验密码的正确性。如果输入密码正确,提示用户输入取钱金额,提示信息为,“请输入您的提款额度”;

用户输入取钱金额,系统校验金额正确,提示用户确认,提示信息为 “您输入的金额是 xxx,请确认,谢谢!”,用户按下确认键,确认需要提取的金额;

系统同步银行主机,点钞票,输出给用户,并且减掉数据库中该用户帐户中的存款金额。

用户提款,银行卡自动退出,用户取走现金,拔出银行卡,ATM 提款机界面恢复到初始状态;

备选事件流 (考虑可能失败的地方):

在基本事件流 1 中:

a) 如果插入无效的银行卡,那么,在 ATM 提款机界面上提示用户 “您使用的银行卡无效!”,3 秒钟后,自动退出该银行卡。

在基本事件流 2 中:

a) 如果用户输入的密码错误,则提示用户 “您输入的密码无效,请重新输入”;

b) 如果用户连续 3 次输入错误密码,ATM 提款机吞卡,并且 ATM 提款机的界面恢复到初始状态。此时,其他提款人可以继续使用其他的合法的银行卡在 ATM 提款机上提取现金。

c) 用户输入错误的密码后,也可以按 “退出” 键,则银行卡自动退出。

在基本事件流 3 中:

a) 如果用户输入的单笔提款金额超过单笔提款上限,ATM 提款机界面提示 “您输入的金额错误,单笔提款上限金额是 1500RMB,请重新输入”;

b) 如果用户输入的单笔金额,不是以 50RMB 为单位的,那么提示用户 “您输入的提款金额错误,请输入以 50 为单位的金额”;

c) 如果用户在 24 小时内提取的金额大于 4500RMB,则 ATM 提款机提示用户,“24 小时内只能提取 4500RMB,请重新输入提款金额” 输入提取的金额超过了系统的设定的限制 ;

d) 如果用户输入正确的提款金额,ATM 提款机提示用户确认后,用户取消提款,则 ATM 提款机自动退出该银行卡;

e) 如果 ATM 提款机中余额不足,则提示用户,“抱歉,ATM 提款机中余额不足”,3 秒钟后,自动退出银行卡。

在基本事件流 4 中:

a) 如果用户银行户头中的存款小于提款金额,则提示用户 “抱歉,您的存款余额不足!”,3 秒钟后,自动退出银行卡;

在基本事件流 5 中:

a) 如果用户没有取走现金,或者没有拔出银行卡,ATM 提款机不做任何提示,直接恢复到界面的初始状态;

场景法 -- 分析过程

总结

1) 流程图可以参考需求规格说明书中的相关流程图

2) 如果没有需求文档,和需求和开发沟通,确保了解被测试软件的流程

3) 流程有大流程和小流程,大流程是指大功能的跳转,小流程是指功能内的调整,大小流程需要都被覆盖到.

备注说明:
该文应该是搜集整理过来的,只是觉的定义和解释的比较规范,非本人原创.若有不当,请联系我,更新援引说明.

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册