案例设计需求有一个ATM取款系统,现对于取款功能进行了如何需求变更:只能取面额是100元(如取500,输出5张100元),现在功能修改为,可以取面额是10元、50元和100元的,其余功能不变,用户界面也没有任何变化,取款原则为“最优吐钞法”,有大额先吐大额,请根据需求变更进行案例设计。
参考测试用例
大额优先:
1、刚好整百的金额,吐出N张100元的
2、刚好为50元,吐出1张50元
3、刚好是50以内的整10元,吐出N张10元
4、取款金额是N百超过50元,吐出N张100元,1张50元,(M-5)张10元。例如380元,会吐出3张100元,1张50元,8-5张10元
5、如果是几十元,同时超过50元。那么会吐出1张50元,M-5张10元
6、取款金额是N百几十元,不超过50的,那么会吐出N张100元,M张10元
没有大额了:
1、如果没有50元了,那么会吐出N张100元,M张10元
2、如果没有100元,有50元,那会出吐出2N张50元,十位部分。如果十位部分不足50元,则会吐出M张10元。如果超过50元,则会吐出2N 1张50元,M-5张10元
3、如果100元和50元的都没有了,那么会吐出全额的10元
4、如果100元的不够用,会优先吐出全部的100元,再用50元进行折算
5、如果100元和50元都不够用了,会优先吐出全部的100元和50元,最后用10元的填补
无效场景:
1、钱不够了,无论是哪一种不够,这时候会报错说取款机余额不足
2、用户输入金额不正确,即有个数,那么也会报错用户输入不正确
3、用户未输入,提示报错
最后,如果你对软件测试感兴趣,欢迎百度搜索“特斯汀软件测试腾讯课堂”或关注公众号“特斯汀软件测试”,里面涵盖很多精彩免费视频或干货知识。
以上要点仅供参考,如有不全,欢迎各路大神留言补充