2
我正在使用模拟测试。我只想问一下mock.record()和mock.playback()是做什么的。 如果将提供任何简单的示例,它将被高度赞赏...模拟方法.net
我正在使用模拟测试。我只想问一下mock.record()和mock.playback()是做什么的。 如果将提供任何简单的示例,它将被高度赞赏...模拟方法.net
在“记录”中,您可以记录一个操作,例如执行存储过程或从数据库检索记录并将它们在数据表中在“回放”中,当该段代码被击中时,回放的动作被回放。
Rhinomocks例如
[Test]
public void GetHtmlTest()
{
var mocks = new MockRepository();
var dal = mocks.StrictMock<DataAccess>();
var mockdatatable = new DataTable();
using (mocks.Record())
{
Expect.Call(dal.GetDataTableFromDatabase("", null)).Return(mockdatatable).IgnoreArguments().Repeat.Any();
Expect.Call(dal.ExecuteUsingStoredProcedure("", null)).Return(true).IgnoreArguments().Repeat.Any();
}
using (mocks.Playback())
{
new SomeText(dal);
var result = SomeText.GetHtml("test","","");
Assert.AreEqual(result, string.Empty);
}
}
而不是做在SomeText.GetHtml一个真正的数据库调用。 mockdatatable由方法返回。