【问题标题】:Should static factories be tested when doing TDD?做TDD的时候应该测试静态工厂吗?
【发布时间】:2015-07-10 06:04:53
【问题描述】:

我知道在 TDD 中,您应该避免编写未经事先测试的代码,但我想知道这是否是为了简单起见可能违反规则的时候之一(避免对包装器进行第三次测试用于测试目的的第三方库,例如网关模式)。不过,我目前正在测试它们,如下所示:

[TestMethod]
public void CreateShouldReturnANewInstance()
{
        var tcpClientMock = new Mock<ITcpClient>();
        var spooler2 = OutboundMessageSpooler.Create(tcpClientMock.Object);
        Assert.IsTrue(spooler2 != null && spooler2 is OutboundMessageSpooler);
}

【问题讨论】:

    标签: c# tdd static-factory


    【解决方案1】:

    你写的测试给我的印象是一个很好的测试,但不是一个非常重要的测试。有这个功能可以从 TCP 客户端创建一个假脱机程序,这个测试证明了这个功能单元是有效的。这是驱动那一点功能的好方法——它以前不起作用,你用红色测试演示,你编写了方法,现在它起作用了。凉爽的。必要的?可能不是。有助于回归?再说一次,可能不是。作为未来(或许更复杂的)逻辑测试的模型有用吗?也许吧。

    我不建议您不要编写这样的测试 - 毕竟,它们很容易编写,并且可以帮助您考虑如何实现该功能 - TDD 的真正意义 - 但我可能不会也不敦促你写它们。看看您觉得它有多大帮助,如果答案是“不多”,请将您的试驾资源花在其他地方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-03
      相关资源
      最近更新 更多