我试图测试使用Moq的一个相当复杂的类和正在到的问题。

我想验证的方法不会被调用,通常这是通过简单的设置MockBehavior.Strict做的,但在这里却班级都有自己的错误报告机制,因此吞下异常被抛出Moq的。

.VerifyAll在试验结束方法也通过细,这是很奇怪。这是起订量的错误,是否有任何变通办法?

我也尝试建立这种方法的回调,做Assert.Fail它内部的,但因为这被吞食,以及,测试框架(VS 2008内置的测试)没有得到通知的吧..

我使用的起订量2.6.1014.1。 (没有时间升级到MOQ 3还)

有帮助吗?

解决方案

那么,这是令人尴尬的,我已经成功地解决这个问题。

在3.0可以做到这一点:

mFMXmlC.Verify(f=>f.Put_Queue_Response(It.IsAny<Uri>(), 
                                       It.IsAny<string>(), 
                                       It.IsAny<string>(), 
                                       It.IsAny<object>()), Times.Never());

还是不明白为什么VerifyAll没有工作,但是这似乎无论如何,以适应该法案。我会离开的问题了,如果别人正在寻找类似的东西。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top