我有一個類存儲其中包含像「log.info(...)」的語句。我可以在運行程序時看到帶有日誌文件的日誌消息。但是,當我運行JUnit測試時,將不會創建日誌文件,但我仍然希望看到日誌消息。該記錄儀:運行Junit測試時,爲什麼日誌消息不會寫入我的日誌文件?
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
而且我log4j屬性:
log4j.rootLogger=DEBUG, STDOUT, file
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
log4j.appender.STDOUT.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=mylogs.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{dd-MM-yyyy HH:mm:ss} %-5p %c{1}:%L - %m%n
的問題是,如何還創建日誌文件和日誌信息運行我的JUnit測試的時候?
編輯:測試日誌屬性
部分:
log4j.rootLogger=ERROR, Console
log4j.logger.play=DEBUG
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %-5p ~ %m%n
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=testlog.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{dd-MM-yyyy HH:mm:ss} %-5p %c{1}:%L - %m%n
這是什麼類型的項目,例如maven,gradle,基本的eclipse/intellij java項目等?你在測試類路徑中有'log4j.properties'嗎? – Morfic
@Morfic,這是Eclipse中的maven項目。是的,我在src/test/resources文件夾下有一個log4j.properties文件。 – user697911
您可以使用它來自定義測試的日誌配置?它看起來像什麼,也許它只有一個控制檯appender定義? – Morfic