Java 如何使Intellij在运行测试方法时显示日志
假设我有以下代码:Java 如何使Intellij在运行测试方法时显示日志,java,maven,intellij-idea,Java,Maven,Intellij Idea,假设我有以下代码: private static final Logger log = LoggerFactory.getLogger( DummyTest.class ); @Test public void test() { log.info("dummy log"); } 在Intellij中运行测试方法test()时,控制台输出中没有任何日志。但是,如果我从命令行通过mvn test运行测试,我将获得日志。顺便说一句,我使用testng 那么,如何使Intellij显示日志 我
private static final Logger log = LoggerFactory.getLogger( DummyTest.class );
@Test
public void test() {
log.info("dummy log");
}
在Intellij中运行测试方法test()
时,控制台输出中没有任何日志。但是,如果我从命令行通过mvn test
运行测试,我将获得日志。顺便说一句,我使用testng
那么,如何使Intellij显示日志 我也遇到了同样的问题-控制台中根本没有日志输出。 根据@wemu的建议,我将以下文件添加到我的项目的
src/test/resources/
目录中,这为我提供了测试代码和测试类的调试输出。
注意:我使用的是log4j2。所需的文件将根据您的日志框架而有所不同
log4j.xml:
我也遇到了同样的问题,到2020年年中,以下几行解决了我的问题:
java.util.logging.Logger.getLogger(LoggingFeature.DEFAULT_LOGGER_NAME).addHandler(new ConsoleHandler());
如果您在测试方法中添加了一个
sout
,您能看到吗?否则,您确定您使用的是“真实”记录器,而不是“noop”版本吗?这应该可以正常工作。如果在执行测试后单击run面板中的类:是否存在与记录器相关的错误消息?也许IntelliJ会选择只登录到文件的日志配置。尝试在包含控制台记录器的src/test/resources中添加log4j.xml(或您使用的任何内容)。