如何更改仅在春季执行单元测试的日志级别



我有一个问题,关于如何更改仅用于单元测试执行的日志级别。

目前,我的应用程序正在以正确的日志级别运行(执行,而不是单元测试(,一切都很好,非常高兴。

然而,每次我在任何本地机器上或在我们的CI管道上运行单元测试时,我们都会看到以下内容:

10:29:45.274 [main] DEBUG org.springframework.test.util.ReflectionTestUtils - Setting field 'contactPoints' of type [null] on target object [CassandraConfiguration@231f98ef] or target class [class CassandraConfiguration] to value [localhost]
10:29:45.277 [main] DEBUG org.springframework.test.util.ReflectionTestUtils - Setting field 'port' of type [null] on target object [CassandraConfiguration@231f98ef] or target class [class com.apple.pay.cloud.vaxholm.base.configuration.CassandraConfiguration] to value [9042]

以及其他调试日志。

什么是"禁用"这些调试日志,或者只对单元测试"更改日志级别"的正确方法?

谢谢

如果您没有更改spring的默认记录器,则使用logback。。。

如果是这种情况,

src/test/resources中创建logback-test.xml文件

在该文件中,您应该能够配置记录器(很可能是stdout记录器

类似于:

<configuration>
<include resource="/org/springframework/boot/logging/logback/base.xml"/>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
</pattern>
</encoder>
</appender>
<root level="error">
<appender-ref ref="STDOUT"/>
</root>
</configuration>

最新更新