模拟对象,nUnit,调用日志和log4net

时间:2008-10-31 09:05:38

标签: unit-testing nunit log4net mocking calllog

单元测试的常见情况如下:

public void SetUp()
{
  this.callLog = new StringBuilder();
}

public void TestBuzzBar()
{
  var bar = new Bar(new MockFoo(callLog));
  bar.Buzz(17);
  Assert.AreEqual("MockFoo.Init(17) MockFoo.PrepareStuff MockFoo.DoTheJob ", callLog.ToString());
}

... MockFoo通过附加字符串调用日志来实现IFoo接口。它需要在模拟中使用callLog进行大量代码处理。

使用log4net收集通话记录是个好主意吗?

1 个答案:

答案 0 :(得分:1)

回答你的问题:log4net是一个很棒的日志框架。它易于设置和使用。我已经在使用MemoryAppender的单元测试中使用它,它基本上使您可以返回并查看测试期间记录的内容。这种技术适用于模拟和SUT。