有一个MemoryAppender,但它不是标准 log4j 库的一部分。
您可以轻松编写自己的代码,但如果您仅将它们用于单元测试,我可能会模拟记录器并断言不会对其进行任何调用。重写目标类中的 getLogger() 方法或直接在类型上设置模拟 Logger。
使用 Jmock(记忆中的示例,如有错误,敬请谅解):
public void testDoFoo() {
Mockery mockery = new Mockery();
Logger mockLogger = mockery.mock(Logger.class);
Foo foo = new Foo();
foo.setLogger(mockLogger);
mockery.checking(new Expectations() {
{
never(mockLogger).debug(with(any(String.class));
}
};
...
//do the actual test.
//assert the mock type has never been called.
mockery.assertIsSatisfied();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5535 次 |
| 最近记录: |