C# · 12月 24, 2021

c# – Rhino Mocks在Arrange中调用实际方法

我试图存根这样的类的方法调用:

Manager managerStub = MockRepository.GenerateStub(constructordata);
managerStub.Stub(x => x.GetData(Arg.Is.Anything)).返回(10)

但是当我尝试运行这个单元测试时,Rhino模拟调用“GetData”方法,在“manager.Stub …”行上使用参数“0”.

为什么Rhino Mocks称之为真正的方法?

解决方法 如果您请求类的存根,RhinoMocks会动态创建派生类并覆盖您想要存根的方法. 但是,如果你想要存根的方法不是虚拟的,RhinoMocks不能覆盖它,因此它不能存根.