场景测试法是一种通过模拟真实用户使用场景来验证软件系统的功能、性能和安全性的方法。 就是模拟多个实际场景会产生的多种结果,将实际场景进行组合,并推测组合后会产生的结果。
例题:
以ATM机存款业务,来设计场景法设计测试用例。
可以将场景分为正确操作无失误的基本流,和有事务或者意外情况的备选流。
基本流:即正常情况下的场景,本题应该为插卡,输入正确密码,成功取款并打印凭条,取卡。
备选流:则是一些非正常情况下的情景,如密码不正确,卡无效等。
可以预测出下面的场景。
表1
基本流 | 插卡,输入密码,成功存款,取卡 |
备选流1 | 卡无效 |
备选流2 | 账号不存在 |
备选流3 | 密码错误(3次以内) |
备选流4 | 密码错误(3次以外) |
备选流5 | 纸币有缺陷,无法存款 |
备选流6 | 纸币面额不是100 |
备选流7 | 纸币摆放错误 |
备选流8 | 纸币有折叠 |
根据基本流和备选流生成场景:
表2
场景1-成功取款 | 基本流 | ||
场景2-卡无效 | 基本流 | 备选流1 | |
场景3-账号不存在 | 基本流 | 备选流2 | |
场景4-密码错误(3次以内) | 基本流 | 备选流3 | |
场景5-密码错误(3次以外) | 基本流 | 备选流4 | |
场景6-密码错误(3次以内),纸币有缺陷无法存款 | 基本流 | 备选流3 | 备选流5 |
场景7-密码错误(3次以内),纸币面额不是100 | 基本流 | 备选流3 | 备选流6 |
场景8-纸币摆放错误 | 基本流 | 备选流7 | |
场景9-纸币有折叠 | 基本流 | 备选流8 | |
场景10-密码错误(3次以内)纸币摆放错误 | 基本流 | 备选流3 | 备选流7 |
场景11-密码错误(3次以内)纸币有折叠 | 基本流 | 备选流3 | 备选流8 |
生成测试用例对应场景:
表3
用例编号 | 场景/条件 | 账号 | 密码 | 存款金额 | 预期结果 |
1 | 场景1-成功存款 | 存在 | 正确 | 1000 | 成功存款 |
2 | 场景2-卡无效 | 存在 | 正确 | 1000 | 退卡,结束 |
3 | 场景3-账号不存在 | 不存在 | 正确 | 1000 | 退卡,结束 |
4 | 场景4-密码错误(3次以内) | 存在 | 错误 | 500 | 重新输入密码(不超过三次) |
5 | 场景5-密码错误(3次以外) | 存在 | 错误 | 500 | 退卡,结束 |
6 | 场景6-密码错误(3次以内),纸币有缺陷无法存款 | 存在 | 正确 | 2000 | 重新放入纸币 |
7 | 场景7-密码错误(3次以内),纸币面额不是100 | 存在 | 正确 | 90 | 重新放入纸币 |
8 | 场景8-纸币摆放错误 | 存在 | 正确 | 200 | 重新放入纸币 |
9 | 场景9-纸币有折叠 | 存在 | 正确 | 200 | 重新放入纸币 |
10 | 场景10-密码错误(3次以内)纸币摆放错误 | 存在 | 正确 | 500 | 重新放入纸币 |
11 | 场景11-密码错误(3次以内)纸币有折叠 | 存在 | 正确 | 500 | 重新放入纸币 |