ATM取款机优化需求的用例设计

有一个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元的填补

无效场景:

钱不够了,无论是哪一种不够,这时候会报错说取款机余额不足

用户输入金额不正确,即有个数,那么也会报错用户输入不正确

用户未输入,提示报错

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwydwz.html