TDD:首先测试第一个或存储库模式

时间:2013-09-05 09:10:15

标签: tdd repository-pattern

我是TDD的新手,我对概念有疑问。 在TDD中说没有编写代码而没有先编写测试。 我们通常需要Repository模式来模拟对象并能够实现测试。 我的问题是:我们应该首先实现Repository模式吗? 如果是,首先编写测试会发生什么? 如果不是,我们如何在不使用Repository模式的情况下模拟对象?

我很感激你花时间。

1 个答案:

答案 0 :(得分:3)

如果您打算使用TDD进行开发,毫无疑问您必须首先创建测试。

它可以让您自然地实现存储库模式,并使您的生活更轻松,因为存储库模式将使单元测试不那么痛苦。

即使TDD测试周期也强制执行此顺序:

  1. 撰写失败的验收测试
  2. 编写失败的单元测试
  3. 使失败的测试通过
  4. 重构
  5. 重复步骤2-4,直至验收通过失败
  6. 当您实际编写代码时,将在步骤3和4中引入存储库模式。

    虽然我更喜欢在步骤4中引入这些模式,但是其他人会跳过并在第3步中实现它。这是一个风格问题,但我更喜欢在单元测试通过后引入更复杂的代码。

    如果你想深入了解这个主题,有一些关于重构的强大书籍,但是对你来说可能特别有趣,因为它在逻辑上绑定了重构和设计模式。 Refactoring to Patterns

    我几个月前在TDD开发中实现了存储库模式,结果很好。

    我认为这是一个很好的问题,所以非常感谢你提出这个问题。