现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景形成了场景
何为场景?
--场景可以理解为由"那些人、什么时间、什么地点、做什么以及如何做"等要素组成的一系列相关活动,且场景中的活动还能由一系列场景组成
场景法组成:
场景组合:
按上图组合多个不同的场景:
场景1:基本流
场景2:基本流 备选流1
场景3:基本流 备选流1 备选流2
场景4:基本流 备选流3
场景5:基本流 备选流3 备选流1
场景6:基本流 备选流3 备选流1 备选流2
场景7:基本流 备选流4
场景8:基本流 备选流3 备选流4
用例设计步骤
1、分析需求,确定出软件的基本流和各项备选流。
2、 依据基本流和各项备选流,生成不同的场景。
3、针对生成的各场景,设计相应的测试用例。
4、重新审核生成的测试用例,去掉多余的部分,并针对最终确定出的测试用例,设计测试数据。
案例分析(一)
例子:分析ATM取款机的场景流程,并设计测试用例和测试数据
基本流:1.插入磁卡
2.ATM验证账户正确
3. 输入密码正确,通过验证
4.输入取款金额
5.取出金额
6.取卡
备选流一:账户不存在或者受限制
备选流二:密码不正确,还有输入机会
备选流三:密码不正确,没有输入机会
备选流四:卡中余额不足
备选流五:ATM机中余额不足
备选流六:超过每日最大提款限额
备选流七:输入金额非100的倍数
案例分析(二)
需求:某旅馆住宿系统支持房间网上预定业务。游客访问网站进行网上房间预定操作,选择合适的房间后,进行在线预定;此时,需要使用个人账号登录系统;待登录成功后,进行定金支付(定金金额为1天的房款);支付成功后,生成房间预订单,完成整个房间预定流程。
问题:采用场景法进行测试用例设计
前提条件:该系统需求中业务流程描述清晰,故采用场景法设计用例
第一步:确定软件的基本流和各项备选流
基本流
备选流
备选流X的含义为可于任何步骤中发生,故标识为未知数X
第二步:依据基本流和备选流生成不同的场景
第三步:针对生产的各场景,设计相应的测试用例。
第四步:重新审核生成的测试用例,去掉多余部分,并针对最终确定出测试用例,设计测试数据
设置以下前置条件:
1、旅馆住宿系统中仅支持房间类型为:标准间(100/天),单人间(200/天),双人间(300/天)
2、单人间已注满,其他房间有空余
3、Hello为系统的已注册用户,密码为123456
4、Nihao为未注册的用户
5、账户余额
以上案例均可以用场景法来完成测试用例的编写!