我尝试在Serenity Cucumber框架中实现日志,并在控制台中打印日志,但不会生成.log文件。
这是logback-test.xml
下的src/test/resources
<configuration>
<appender name="STDOUT"
class="ch.qos.logback.core.ConsoleAppender">
<File name="File" fileName="admin.log">
<encoder>
<pattern> %d{HH:mm:ss.SSS}
[%thread] %-5level %logger{36} - %msg ..................%n </pattern>
</encoder>
</File>
</appender>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>admin.log</file>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg
..................%n
</pattern>
</encoder>
</appender>
<logger name="root" level="DEBUG" />
<logger name="net.serenitybdd" level="INFO" />
<logger name="net.thucydides" level="INFO" />
<root level="INFO">
<appender-ref ref="STDOUT" />
</root>
</configuration>
在pom.xml
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>
答案 0 :(得分:0)
ConsoleAppender
不会写入文件,只会忽略其下的file
配置元素。相反,您应该使用FileAppender
:
<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>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>admin.log</file>
<encoder>
<pattern>
%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg..................%n
</pattern>
</encoder>
</appender>
<logger name="root" level="DEBUG" />
<logger name="net.serenitybdd" level="INFO" />
<logger name="net.thucydides" level="INFO" />
<root level="INFO">
<appender-ref ref="STDOUT" />
<appender-ref ref="FILE" />
</root>
</configuration>