前言
对需求进行功能拆分、需求整理后,接着处理测试范围、怎么测的问题,即测试用例设计方法,它主要考虑大方向,不太考虑细节。用例编写方法时考虑细节。测试用例设计方法中的场景法,包括基本流和备选流,主要用于测试业务流程,基本流模拟正确操作,备选流模拟异常操作,备选流可以有多个。
1.1 测试点
测试点或者检查点,是测试时应该考虑可以测试的诸多方面。
1.2 场景法
场景法模拟用户操作软件时的情景,主要用于测试系统的业务流程。
当拿到一个测试任务时,我们先要关注它的主要功能和业务流程是否正确实现,这就需要使用场景法来完成测试。比如,该干的事是否干了,不该干的事是否没干。
1.3 场景的定义
场景用来描述软件操作的路径。即先干什么再干什么。场景包括两个流:基本流和备选流。
基本流:按照正确的业务流程来实现的一条操作路径(模拟正确的操作流程)。
备选流:导致程序出现错误的操作流程(模拟错误的操作流程)。
1.4 场景法的分析步骤
(1)分析软件需求;
(2)从用户使用情景角度,写出业务流程和业务规则;
(3)写出基本流场景和备选流场景;
1.5 场景法案例:ATM机取款
在ATM机取款时,操作是这样的:插入银行卡,验卡成功后,输入正确密码,选择取款和金额,验资通过后,计减余额,出钞,返回主界面。
1.5.1 步骤一:分析业务流程
根据使用情景或场景来分析业务流程。
可以绘制流程图:圆角矩形表示动作,
程序做的事情也要写出来,比如,插入银行卡后,程序要“验证银行卡”。“验证银行卡”不成功,比如,插入的是公交卡等非银行卡。“验证总取款金额”,一笔不能超过2000,一天不能超过2万。
1.5.2 步骤二:描述程序的基本流和备选流
1.5.2.1 基本流(正确的流程)
(1) 插入银行卡:客户将银行卡插入ATM机的读卡器;
(2) 验证银行卡:ATM机从银行卡的磁条中读取账户代码,并检查它是否属于可以接受的银行卡;
(3) 输入密码:ATM机要求客户输入密码;
(4) 验证密码:确定该密码是否正确;
(5) 进入ATM主界面:ATM显示在本机中可用的各种选项;
(6) 选择取款并输入金额:客户选择“取款”,并选择取款金额;
(7) ATM机验证:ATM机进行验证账户余额是否满足以及总取款金额是否满足要求,验证ATM机内现金是否够用;
(8) 更新账户余额、出钞:验证成功,更新账户余额,输出现金,提示用户收取现金;
(9) 返回主界面;
1.5.2.2 备选流(各种错误情况)
出现错误的各种情况,按顺序考虑错误情况,以防遗漏。
(1) 银行卡无效:提示错误并退卡;
(2) 密码错误:提示错误,并判断是否3次错误;
(3) 密码3次错误:吞卡;
(4) 账户余额不足:提示错误并退卡;
(5) 总取款金额超出当日可取金额:提示错误并退卡;
(6) ATM机余额不足:提示错误并退卡;
1.5.3 步骤三:根据基本流和备选流生成不同的场景
基本流和备选流生成不同场景,结果可能不同,可能相似。
生成不同的场景对应不同的测试点。
1.6 场景法练习:三角形判断程序
三边为0-1000的实数,最多允许3位小数。
三角形类别:
普通三角形:三边都不相等;
等腰三角形:只有两边相等;
等边三角形:三条边都相等;
直角三角形:两边平方和等于第三边平方;
1.6.1 需求分析
需求分析要全面。
需求:
三边均为0-1000的实数,最多3位小数
业务流程:
数据输入少于3个,报错
否则,输入的不全是输,报错
否则,输入的不在0-1000,或者小数超过3位,报错
否则,两边之和不全大于第三边,提示不能构成三角形
否则,三边都都相等,为等边
否则,只有两边相等,为等腰
否则,两边平方和等于第三边平方,为直角
否则,普通三角形
1.6.2 场景
场景分析不要太过细节,覆盖业务分支即可。
基本流场景:
等边三角形
等腰三角形
直角三角形
普通三角形
备选流场景:
输入数据不完整
输入的不是实数
输入范围超过0-1000
小数位数超过3位
不能构成三角形