总结

我们已经迈出了 TDD 的第一步,并了解了每个测试的 AAA 结构。我们看到,设计软件并在编写生产代码之前先编写测试是可能的,并且结果会得到更清晰、更模块化的设计。我们学习了什么是一个好的测试,并掌握了一些常用的技术,用来捕捉常见的编程错误以及测试抛出异常的代码。

理解在我们的 FIRST 测试中使用 AAA 部分的流程是非常重要的,因为这为我们提供了一个可以可靠遵循的模板。同样,理解设计思路的流程也很重要,正如前面 Wordz 示例中所使用的。编写测试实际上是将我们做出的设计决策捕捉到单元测试代码中。这为我们提供了对设计是否干净的快速反馈,并为未来的代码读者提供了一个可执行的规范。

在下一章中,我们将添加测试并驱动出我们单词评分对象的完整实现。我们将看到 TDD 有一种推动工作的节奏。我们将使用红绿重构(Red, Green, Refactor)的方法来不断完善我们的代码,并保持代码和测试的整洁,而不会过度工程化它们。

问题与答案