替代SLF4J绑定或配置单元测试?

时间:2011-05-05 19:29:02

标签: java maven slf4j

我希望能够将单元测试的SLF4J绑定切换到简单版本,但似乎没有简单的方法来配置它。基本上,我构建的项目记录到一个文件,我希望它在单元测试时成为控制台。

我之前使用过antrun maven插件用persistence.xml文件做了类似的事情,但这个解决方案看起来有点沉重。

有没有人在单元测试中有使用备用配置或绑定的解决方案?

TIA

1 个答案:

答案 0 :(得分:19)

更好的方法是促进您的日志记录框架。例如,Logback库首先搜索logback-test.xml,如果它不可用,它会查找logback.xml。如果您将logback-test.xml放在/src/test/resources中,则会将其用于单元测试。在此文件中,您可以配置控制台日志记录而不是文件。

如果您仍在使用Log4J,只需将log4j.xml放在/src/test/resources中 - 此文件夹在 /src/main/resources之前的类路径上可用,因此Log4J将使用它来代替普通/src/main/resources版本,但仍然为最终版本加载后一版本(/src/test/resources甚至不可用)。