我想尝试使用 TDD 实现俄罗斯方块游戏。
根据我在阅读《Growing Object-Oriented Software, Guided by Tests 》时的理解,我应该从定义我的验收测试开始。如果我是对的,进行 TDD 时的验收测试就像用例一样定义。
定义一个好的第一个验收测试作为应用程序的“骨架”是非常重要的,所以它应该很简单。
我选择了以下 2 个验收测试作为我的第一个实施:
- 游戏开始,玩家关闭它。
- 游戏开始,玩家什么也不做。他最终输了。
这两个验收测试是好的开始测试吗?什么是好的下一个验收测试?我可以想到类似的东西
- 游戏开始,只有方块掉落。玩家将它们全部放在这样的方式下,即线条总是“爆炸”,使得 100 个游戏步骤后的游戏仍未结束。
但我觉得这有点尴尬,因为在真正的俄罗斯方块游戏中,你总是会有不同的碎片掉下来,这就是验收测试应该做的。
此外,在执行 (2) 时,我有点想尝试一次性实现所有内容,我认为这不是在实现第二个验收测试时假装的。我想这个想法是只在其中 6-7 个之后才实施游戏,而不是在第二个。我对吗?
谢谢