我是 TDD 新手,我对概念有疑问。在 TDD 中说,如果不先编写测试,就不会编写代码。我们通常需要存储库模式来模拟对象并能够实现测试。我的问题是:我们应该首先实现存储库模式吗?如果是,首先编写测试会发生什么?如果不是,我们如何在不使用存储库模式的情况下模拟对象?
感谢您抽出宝贵时间。
我是 TDD 新手,我对概念有疑问。在 TDD 中说,如果不先编写测试,就不会编写代码。我们通常需要存储库模式来模拟对象并能够实现测试。我的问题是:我们应该首先实现存储库模式吗?如果是,首先编写测试会发生什么?如果不是,我们如何在不使用存储库模式的情况下模拟对象?
感谢您抽出宝贵时间。
如果您打算使用 TDD 进行开发,毫无疑问您必须首先创建测试。
它将让您自然地实现存储库模式,并使您的生活更轻松,因为存储库模式将使单元测试不那么痛苦。
甚至 TDD 测试周期也强制执行此顺序:
当您实际编写代码时,将在第 3 步和第 4 步中介绍存储库模式。
虽然我更喜欢在第 4 步中引入这些模式,但其他一些人会直接跳到第 3 步中实现它。这是风格问题,但我更喜欢在单元测试通过后引入更复杂的代码。
如果你想更深入地了解这个主题,有一些关于重构的强大书籍,但其中一本可能对你来说特别有趣,因为它在逻辑上绑定了重构和设计模式。重构为模式
几个月前,我自己在 TDD 开发中实现了存储库模式,效果很好。
我认为这是一个很好的问题,所以非常感谢您提出这个问题。