总结

我们在本章中涵盖了很多内容。我们使用 TDD(测试驱动开发)驱动出了 Wordz 游戏的核心应用逻辑。我们采取了小步骤,并通过三角测量法逐步将更多细节引入代码实现中。我们使用六边形架构来支持 FIRST 单元测试,从而摆脱了繁琐的集成测试及其测试环境。我们使用了测试替身(test doubles)来替代难以控制的对象,例如数据库和随机数生成器。我们构建了一套有价值的单元测试套件,这些测试与具体实现解耦。这使得我们能够自由地重构代码,最终得到了一个基于 SOLID 原则的非常优秀的软件设计,这将显著减少维护工作量。

我们以一个有意义的代码覆盖率报告作为结尾,该报告显示我们的测试执行了 100% 的生产代码行数,这让我们对自己的工作有了高度的信心。

接下来,在第 14 章《驱动数据库层》中,我们将编写数据库适配器以及一个集成测试,使用 Postgres 数据库来实现我们的 GameRepository

问题与解答

进一步阅读