讨论:如何测试工作流~~~~~~~~
对于工作流程,怎么测试比较好呢?这个可能是具体情况具体分析,很想和大家讨论一下这个问题。我也想知道:victory:
就没有下文了么,一起讨论。
最近也在烦这个,基本上和业务的熟悉程度有很大关系,设计测试用例时采用业务流分支进行覆盖(突然想到的),自己先试试,回来再继续交流,HOHO。
ATM流程
举一个用户通过银行的ATM取款机进行取款的例子,来说明流程分析法、等价类分析法和边界值法。基本事件流:
1、用户向ATM提款机中插入银行卡,如果银行卡是合法的,ATM提款机界面提示用户输入提款密码;
参数1 银行密码
参数类型 字符串
参数范围 字符串为0~9之间的阿拉伯数字组合,密码长度为6位
备注
用户输入该银行卡的密码,ATM提款机与MainFrame传递密码,检验密码的正确性。如果输入密码正确,提示用户输入取钱金额,提示信息为,“请输入您的提款额度”;
用户输入取钱金额,系统校验金额正确,提示用户确认,提示信息为“您输入的金额是xxx,请确认,谢谢!”,用户按下确认键,确认需要提取的金额;
参数1 取款金额
参数类型 整数
参数范围 50~1500 RMB,单笔取款额最高为1500RMB;每24小时之内,取款的最高限额是4500RMB
备注
系统同步银行主机,点钞票,输出给用户,并且减掉数据库中该用户帐户中的存款金额。
用户提款,银行卡自动退出,用户取走现金,拔出银行卡,ATM提款机界面恢复到初始状态;
备选事件流(考虑可能失败的地方):
1. 在基本事件流1中:
a) 如果插入无效的银行卡,那么,在ATM提款机界面上提示用户“您使用的银行卡无效!”,3秒钟后,自动退出该银行卡。
2. 在基本事件流2中:
a) 如果用户输入的密码错误,则提示用户“您输入的密码无效,请重新输入”;
b) 如果用户连续3次输入错误密码,ATM提款机吞卡,并且ATM提款机的界面恢复到初始状态。此时,其他提款人可以继续使用其他的合法的银行卡在ATM提款机上提取现金。
c) 用户输入错误的密码后,也可以按“退出”键,则银行卡自动退出。
3. 在基本事件流3中:
a) 如果用户输入的单笔提款金额超过单笔提款上限,ATM提款机界面提示“您输入的金额错误,单笔提款上限金额是1500RMB,请重新输入”;
b) 如果用户输入的单笔金额,不是以50RMB为单位的,那么提示用户“您输入的提款金额错误,请输入以50为单位的金额”;
c) 如果用户在24小时内提取的金额大于4500RMB,则ATM提款机提示用户,“24小时内只能提取4500RMB,请重新输入提款金额”输入提取的金额超过了系统的设定的限制 ;
d) 如果用户输入正确的提款金额,ATM提款机提示用户确认后,用户取消提款,则ATM提款机自动退出该银行卡;
e) 如果ATM提款机中余额不足,则提示用户,“抱歉,ATM提款机中余额不足”,3秒钟后,自动退出银行卡。
4. 在基本事件流4中:
a) 如果用户银行户头中的存款小于提款金额,则提示用户“抱歉,您的存款余额不足!”,3秒钟后,自动退出银行卡;
5. 在基本事件流5中:
a) 如果用户没有取走现金,或者没有拔出银行卡,ATM提款机不做任何提示,直接恢复到界面的初始状态;
根据以上这段需求,画出流程图,如下:
根据流程图,得到基本路径。
基本路径:插入银行卡---提示输入密码---用户输入密码---提示输入金额---用户输入金额---提示确认---用户确认---输出钞票给用户,退卡---用户取走现金,取走银行卡---界面恢复初始状态
下面分析测试数据,采用等价类划分和边界值法。
等价类划分:
输入条件 有效等价类 无效等价类
银行卡 银行卡 非银行卡
密码 字符串为0~9之间的阿拉伯数字组合,密码长度为6位 长度不是6位的0~9之间的组合
金额 以50为单位,50~1500 RMB,单笔取款额最高为1500RMB;每24小时之内,取款的最高限额是4500RMB 非50的倍数,或大于1500,24小时内取款超过4500
确认 TRUE
取现金 TRUE、FALSE
取银行卡 TRUE、FALSE
边值分析:
输入 内点 上点 离点
密码 000001、999998 000000、999999 00000、1000000
金额 100、1450 50、1500 0、1550
得到测试用例:
1
测试用例编号 ATM_ST_FETCH_001
测试项目 银行ATM机取款
测试标题 输入合法密码和金额,按金额确认,并取走现金和银行卡,内点小
重要级别 高
预置条件 系统存在该用户
输入 金额100,密码000001
操作步骤 1、插入银行卡;
2、输入密码000001;
3、输入金额100;
4、点击确定;
5、取走现金;
6、取走银行卡。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示确认;
4、输出钞票;
5、退出银行卡;
6、界面恢复初始状态
2
测试用例编号 ATM_ST_ FETCH _002
测试项目 银行ATM机取款
测试标题 输入合法密码和金额,按金额确认,不取走现金和银行卡,内点大
重要级别 中
预置条件 系统存在该用户
输入 金额1450,密码999998
操作步骤 1、插入银行卡;
2、输入密码999998;
3、输入金额1450;
4、点击确定;
5、不取走现金;
6、不取走银行卡。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示确认;
4、输出钞票;
5、退出银行卡;
6、界面恢复初始状态
3
测试用例编号 ATM_ST_ FETCH _003
测试项目 银行ATM机取款
测试标题 输入合法密码和金额,按金额确认,并取走现金和银行卡,上点小
重要级别 中
预置条件 系统存在该用户
输入 金额50,密码000000
操作步骤 1、插入银行卡;
2、输入密码000000;
3、输入金额50;
4、点击确定;
5、取走现金;
6、取走银行卡。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示确认;
4、输出钞票;
5、退出银行卡;
6、界面恢复初始状态
4
测试用例编号 ATM_ST_ FETCH _004
测试项目 银行ATM机取款
测试标题 输入合法密码和金额,按金额确认,并取走现金和银行卡,上点大
重要级别 中
预置条件 系统存在该用户
输入 金额1500,密码999999
操作步骤 1、插入银行卡;
2、输入密码999999;
3、输入金额1500;
4、点击确定;
5、取走现金;
6、取走银行卡。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示确认;
4、输出钞票;
5、退出银行卡;
6、界面恢复初始状态
5
测试用例编号 ATM_ST_ FETCH _005
测试项目 银行ATM机取款
测试标题 插入非银行卡
重要级别 中
预置条件
输入
操作步骤 插入IC卡
预期输出 提示用户“您使用的银行卡无效!”,3秒钟后,自动退出该银行卡
6
测试用例编号 ATM_ST_ FETCH _006
测试项目 银行ATM机取款
测试标题 输入非法密码,离点小
重要级别 中
预置条件 系统存在该用户
输入 密码00000
操作步骤 1、插入银行卡;
2、输入密码00000。
预期输出 1、提示输入密码;
2、提示用户“您输入的密码无效,请重新输入”;
7
测试用例编号 ATM_ST_ FETCH _007
测试项目 银行ATM机取款
测试标题 输入非法密码,离点大
重要级别 中
预置条件 系统存在该用户
输入 密码1000000
操作步骤 1、插入银行卡;
2、输入密码1000000。
预期输出 1、提示输入密码;
2、提示用户“您输入的密码无效,请重新输入”;
8
测试用例编号 ATM_ST_ FETCH _008
测试项目 银行ATM机取款
测试标题 输入非法金额,离点小
重要级别 中
预置条件 系统存在该用户
输入 密码123456,金额为0
操作步骤 1、插入银行卡;
2、输入密码123456。
3、输入金额0。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示用户“您输入的提款金额错误,请输入以50为单位的金额”;
9
测试用例编号 ATM_ST_ FETCH _009
测试项目 银行ATM机取款
测试标题 输入非法金额,离点大
重要级别 中
预置条件 系统存在该用户
输入 密码123456,金额为1550
操作步骤 1、插入银行卡;
2、输入密码123456。
3、输入金额1550。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示用户 “您输入的金额错误,单笔提款上限金额是1500RMB,请重新输入”;
10
测试用例编号 ATM_ST_ FETCH _010
测试项目 银行ATM机取款
测试标题 提取金额达到上限
重要级别 中
预置条件 系统存在该用户
输入 密码123456,金额为1500,50
操作步骤 1、插入银行卡;
2、输入密码123456。
3、输入金额1500。
4、且在23小时内,提款4500。
5、在23小时59分,提款50。
预期输出 1、提示输入密码;
2、提示输入金额;
3、提示用户 “24小时内只能提取4500RMB,请重新输入提款金额”
补充测试用例,以覆盖左右的路径:
11
测试用例编号 ATM_ST_ FETCH _011
测试项目 银行ATM机取款
测试标题 插入卡后取消操作
重要级别 底
预置条件 无
输入 无
操作步骤 1、插入银行卡;
2、点击取消;
预期输出 1、提示输入密码;
2、退出银行卡;
12
测试用例编号 ATM_ST_ FETCH _012
测试项目 银行ATM机取款
测试标题 输入非法密码
重要级别 中
预置条件 系统存在该用户
输入 密码111111
操作步骤 1、插入银行卡;
2、输入密码111111;
3、重复操作“步骤2”2次(一共出错3次)。
预期输出 1、提示输入密码;
2、提示用户“您输入的密码无效,请重新输入”
3、重复“步骤1”“步骤2”2次(总共提示3次出错);
4、系统吞卡;
13
测试用例编号 ATM_ST_ FETCH _013
测试项目 银行ATM机取款
测试标题 输入提款金额大于账户内金额
重要级别 中
预置条件 系统存在该用户,账户存款为1000
输入 密码123456,金额为1500
操作步骤 1、插入银行卡;
2、输入密码123456;
3、输入金额1500;
4、点击确定;
预期输出 1、提示用户“抱歉,您的存款余额不足!”;
2、3秒钟后,自动退出银行卡;
ATM流程图在附件中,参考下吧
路过
看来5楼是不清楚什么叫工作流...
工作流测试 和 场景 测试不一样
5楼的很全啊
真全。。。
测试用例 写的也很细哦。。。:victory:
页:
[1]