如何对包含final static logger
的类的方法进行单元测试?我不需要或者根本不想让它记录任何东西,但当我运行单元测试时应该通过我
[Fatal Error] log4j2.xml:1:151: Premature end of file.
ERROR StatusLogger Error parsing C:\...\MyProject\target\classes\log4j2.xml
我应该嘲笑它,以某种方式忽略它,或者什么?我不希望它记录测试,但我显然需要它来记录应用程序本身的执行时间。
答案 0 :(得分:0)
因此,尝试模拟,或以某种方式绕过日志记录,而不是使问题复杂化,我选择让日志记录发生。我只是不允许它写入我的日志目录,也不打印到控制台。我只是简单地制作了一个src/test/resources
文件夹,创建了一个log4j2.xml
并将其折腾在那里解决了我的问题:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="DEBUG" shutdownHook="disable">
<Properties>
<Property name="log-path">./logs</Property>
</Properties>
<Loggers>
<Logger name="root" level="info" additivity="false">
<appender-ref ref="RollingFile" level="info"/>
</Logger>
<Root level="info" additivity="false">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>