在Moq中测试多次调用的方法是使用Setup
方法配置期望的调用次数。可以使用Times
类来指定调用次数,例如:
var mock = new Mock<IFoo>();
mock.Setup(x => x.DoSomething()).Returns(true).Verifiable();
// 调用方法
mock.Object.DoSomething();
mock.Object.DoSomething();
// 验证调用次数
mock.Verify(x => x.DoSomething(), Times.Exactly(2));
在上面的例子中,我们配置了DoSomething
方法的返回值为true
,并使用Verifiable
方法将其标记为可验证。然后,我们调用了两次DoSomething
方法,并使用Verify
方法验证它被调用了两次。
如果需要验证方法至少被调用一次,可以使用Times.AtLeastOnce()
。如果需要验证方法从未被调用,可以使用Times.Never()
。
企业创新在线学堂
云+社区沙龙online第5期[架构演进]
企业创新在线学堂
企业创新在线学堂
云+社区技术沙龙[第11期]
领取专属 10元无门槛券
手把手带您无忧上云