案例设计需求
有一个 ATM 取款系统,现对于取款功能进行了需求变更:只能取面额是 100 元(如取 500,输出 5 张 100 元)。
现在功能修改为,可以取面额是 10 元、50 元和 100 元的,其余功能不变,用户界面也没有任何变化,取款原则为“最优吐钞法”,有大额先吐大额,请根据需求变更进行案例设计。
参考测试用例
大额优先
-
刚好整百的金额,吐出 N 张 100 元的
-
刚好为 50 元,吐出 1 张 50 元
-
刚好是 50 以内的整 10 元,吐出 N 张 10 元
-
取款金额是 N 百,超过 50 元,吐出 N 张 100 元,1 张 50 元,(M-5)张 10 元(例如 380 元,会吐出 3 张 100 元,1 张 50 元,8-5 张 10 元)
-
如果是几十元,同时超过 50 元。那么会吐出 1 张 50 元,M-5 张 10 元
-
取款金额是 N 百几十元,不超过 50 的,那么会吐出 N 张 100 元,M 张 10 元
没有大额了
-
如果没有 50 元了,那么会吐出 N 张 100 元,M 张 10 元
-
如果没有 100 元,有 50 元,那会出吐出 2N 张 50 元,十位部分。如果十位部分不足 50 元,则会吐出 M 张 10 元。如果超过 50 元,则会吐出 2N+1 张 50 元,M-5 张 10 元
-
如果 100 元和 50 元的都没有了,那么会吐出全额的 10 元
-
如果 100 元的不够用,会优先吐出全部的 100 元,再用 50 元进行折算
-
如果 100 元和 50 元都不够用了,会优先吐出全部的 100 元和 50 元,最后用 10 元的填补
无效场景
-
钱不够了,无论是哪一种不够,这时候会报错说取款机余额不足
-
用户输入金额不正确,即有个数,那么也会报错用户输入不正确
-
用户未输入,提示报错
如果对python自动化测试、web自动化、接口自动化、移动端自动化、面试经验交流等等感兴趣的测试人,可以 点这自行获取…
[喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!]