以下是一个简单的TestMethod,它使用ITestInterface
ITestInterface mockProxy = MockRepository.GenerateMock<ITestInterface>();
OR
ITestInterface mockProxy = MockRepository.GenerateStub<ITestInterface>();
有人可以帮助我在这个特定场景中使用哪一个。
以下是TestMethod用于测试业务层方法,x.Method是数据访问层方法。
[TestMethod]
public void TestMethod1()
{
ITestInterface mockProxy = MockRepository.GenerateMock<ITestInterface>();
ITestInterface mockProxy = MockRepository.GenerateStub<ITestInterface>();
mockProxy.Stub(x => x.Method(Arg<int>.Is.Anything)).Return(10);
var result = mockProxy.BusinessLayerMethod(10);
Assert.AreEqual(10, result);
}
答案 0 :(得分:1)
你的场景根本没有意义。当然测试方法成功通过,RhinoMocks
按预期工作;)您只需将方法的返回值硬编码为10
,然后只需验证Mock / Stub上的方法调用是否返回此值,这是测试RhinoMocks
本身但没有任何自定义行为(在这种情况下是您的DAL行为)的良好测试用例