51Testing软件测试论坛

标题: 讨论:如何测试工作流~~~~~~~~ [打印本页]

作者: lucklili    时间: 2008-4-28 17:30
标题: 讨论:如何测试工作流~~~~~~~~
对于工作流程,怎么测试比较好呢?这个可能是具体情况具体分析,很想和大家讨论一下这个问题。



作者: ui599    时间: 2008-6-2 19:39
我也想知道

作者: lyscu    时间: 2008-6-12 16:28
就没有下文了么,一起讨论。

作者: 风起河边    时间: 2008-7-11 16:57
最近也在烦这个,基本上和业务的熟悉程度有很大关系,设计测试用例时采用业务流分支进行覆盖(突然想到的),自己先试试,回来再继续交流,HOHO。

作者: wuchunying    时间: 2008-7-13 20:06
标题: 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秒钟后,自动退出银行卡;


作者: wuchunying    时间: 2008-7-13 20:10
ATM流程图在附件中,参考下吧

作者: hdtest001    时间: 2009-3-3 16:31
路过

作者: 放任无奈    时间: 2011-6-23 14:46
看来5楼是不清楚什么叫工作流...


作者: 一直都很烦    时间: 2011-8-8 15:16
工作流测试 和 场景 测试不一样

作者: 愚人    时间: 2011-11-27 23:04
5楼的很全啊


作者: helen_xyy    时间: 2011-12-29 20:59
真全。。。
  测试用例 写的也很细哦。。。






欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2