如果你没有Moq-wrapper,你能验证一个模拟对象吗?

时间:2009-11-24 11:43:12

标签: .net moq

如果您没有Moq-wrapper,有人可以向我解释如何验证模拟吗? MockFactory.Verify()不会这样做。我希望能够明确地验证模拟,并且应该使用mockfactory创建模拟!请发送您的意见。

1 个答案:

答案 0 :(得分:4)

如果您使用工厂创建模拟,则并不表示您必须使用它来验证它们。有时我只使用工厂在一个地方为我的所有模拟设置MockBehavior。但是我仍然分别验证了我的一些模拟。

var factory = new MockFactory(MockBehavior.Strict);
var fooMock = factory.Create<IFoo>();

fooMock.Setup(foo => foo.Bar());

fooMock.Verify(foo => foo.Bar, Times.Once());

<强>更新 如果你在测试方法中只有模拟对象,你可以像这样得到模拟包装器:

IFoo foo = fooMock.Object;

//...

var fooMockAgain = Mock.Get(foo);