现在已经了解了 FIT 的基础知识,我们来做一个练习。如果还没有 下载 FIT,现在是下载它的时候了!如前所述,这个案例研究显示出可以容易地把 FIT 和 JUnit 测试组合在一起,形成多层质量保证。
假设现在要为一个酿酒厂构建一个订单处理系统。酿酒厂销售各种类型的酒类,但是它们可以组织成两大类:季节性的和全年性的。因为酿酒厂以批发方式运作,所以酒类销售都是按桶销售的。对于零售商来说,购买多桶酒的好处就是折扣,而具体的折扣根据购买的桶数和酒是季节性还是全年性的而不同。
麻烦的地方在于管理这些需求。例如,如果零售店购买了 50 桶季节性酒,就没有折扣;但是如果这 50 桶不是 季节性的,那么就有 12% 的折扣。如果零售店购买100 桶季节性酒,那就有折扣,但是只有 5%。100 桶更陈的非季节性酒的折扣达到 17%。购买量达到 200 时,也有类似的规矩。