Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使Intellij在运行测试方法时显示日志_Java_Maven_Intellij Idea - Fatal编程技术网

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(或您使用的任何内容)。