在进行TDD时是否应该测试静态工厂?

时间:2015-07-10 06:04:54

标签: c# tdd static-factory

我知道在TDD中,你应该避免编写事先未经过测试的代码,但我想知道这是否是为了简单起见可能会破坏规则的时间之一(避免测试第三个包装器)用于测试目的的派对库,例如网关模式)。我现在正在测试它们,类似这样:

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

1 个答案:

答案 0 :(得分:1)

你所写的考试对我来说是一个很好的考验,但不是一个非常重要的考试。有一些功能可以从TCP客户端创建一个假脱机程序,这个测试表明该功能单元有效。这是一个很好的方法来驱动这一点功能 - 它之前没有用,你用红色测试演示,你编写了方法,现在它的工作原理。凉。必要?可能不是。回归有帮助吗?再一次,可能不是。有助于作为未来测试的模型,也许更复杂的逻辑?也许

我不建议你不要写这样的测试 - 毕竟,它们很容易编写,可能会帮助你思考你希望如何实现这个功能 - TDD究竟是什么 - 但我可能不会'请你写信给他们。看看你找到它有多大帮助,如果答案“不多”,那就把你的试驾资源花在其他地方。