Cucumber-jvm で実行している Grovvy 単体テストでログを有効にしようとしています。
私のテストでは、インポートしました:
import groovy.util.logging.Slf4j
その後追加
@Slf4j
ただし、これらのコマンドのいずれかを実行すると:
mvn test -Dgmaven.logging=DEBUG
mvn test -Dgmaven.logging=TRACE
このメソッドは「[WARN] log.isWarnEnabled()」のみを出力します
void debugLogging(){
println("~~~~~ debugLogging() ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
if(log.isTraceEnabled()){
println("log.isTraceEnabled()")
log.trace("log.isTraceEnabled()")
}
if(log.isDebugEnabled()){
println("log.isDebugEnabled()")
log.debug("log.isDebugEnabled()")
}
if(log.isInfoEnabled()){
println("log.isInfoEnabled()")
log.info("log.isInfoEnabled()")
}
if(log.isWarnEnabled()){
println("log.isWarnEnabled()")
log.warn("log.isWarnEnabled()")
}
}
これが私の ./src/test/resources/logback.xml です:
<configuration>
<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>
<!-- Use level="DEBUG" for more detailed logging -->
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>
単体テストでログ レベルを変更するにはどうすればよいですか?