《验收测试驱动开发:ATDD实例详解》—第1章1.1节代客泊车

第1章停车费计算器讨论会
验收测试驱动开发:ATDD实例详解
不久前,Major国际航空公司决定扩展其在互联网上的服务 。具体而言,他们想让自己的网站为潜在旅客提供预先计算停车费的功能 。旅客只要通过提交一个在线表单,系统就可以按其停车时长来计算停车费用 。
以前Major国际航空公司做过这样一个表单,但旅客的反馈非常差 。所以管理团队决定再重新做一个 。
总结前面项目失败的经验教训,项目团队(包括资深开发人员、开发人员Alex和测试人员Tony)决定采取一种新的方式 。
上次做的时候,项目需求从头到尾一直在变,导致代码也是一个补丁接着一个补丁,最后发现一开始实现的东西就是错的 。他们不想再重复这个过程 。所以,这次团队要采用“需求讨论会”的方式来更好地收集停车费计算器的业务规则 。为此,和Tony特别邀请了Major国际航空公司停车场管理部门的经理Bill参加讨论会,Bill是停车费用的业务专家 。
1.1代客泊车
验收测试驱动开发:ATDD实例详解
: 好吧,那我们讨论一下停车费计算器的需求 。Bill,你能讲一下吗?

《验收测试驱动开发:ATDD实例详解》—第1章1.1节代客泊车

文章插图
Bill: 我们基本上有3种不同的停车位 。有些是按小时计费,有些按天计费,有些设有每日或每周的收费上限 。
: 这3种不同的停车位具体指什么?它们有名字吗?
Bill: 代客泊车、临时停车位和常规车位 。如果丢失小票,会被加收10块钱 。
: 让我们集中看这3种类型 。它们的区别是什么?
Bill: 对于代客泊车,客人把车放在代客泊车区,得到一张取车的凭据 。
: 能讲一下停车费用吗?
Bill: 代客泊车每天18美元,5小时以内(含5小时)优惠6美元 。
: 等一下,Bill 。你的意思是即使30分钟我也要交12块钱,3个小时也是一样,5小时也是?但如果是5小时零1分钟,我就不得不交18美元,和12小时或24小时一样?
Bill: 是的,完全正确 。
: 那24小时零1分钟呢?是30美元还是36美元?
Bill: 哦,那当然是36美元了 。
: 那每周上限呢?代客泊车有吗?
Bill: 没有,这基本就是代客泊车的全部了 。
Tony: 好,那让我把它们写下来作为实例 。
Tony把讨论的实例记在表1-1中,标记为“代客泊车” 。
《验收测试驱动开发:ATDD实例详解》—第1章1.1节代客泊车

文章插图
: 这些实例对“代客泊车”有意义吗?
【《验收测试驱动开发:ATDD实例详解》—第1章1.1节代客泊车】Bill: 是的,这些实例概括了我们的谈话的内容 。