Moq 允许开发人员模拟受保护的成员。我在Rhino.Mocks中寻找相同的功能,但未能找到。
以下是Moq快速入门页面中一个示例,说明如何模拟受保护的方法。
// at the top of the test fixture
using Moq.Protected()
// in the test
var mock = new Mock<CommandBase>();
mock.Protected()
.Setup<int>("Execute")
.Returns(5);
// if you need argument matching, you MUST use ItExpr rather than It
// planning on improving this for vNext
mock.Protected()
.Setup<string>("Execute",
ItExpr.IsAny<string>())
.Returns(true);
如果我在追寻不存在的东西,请告诉我。