如何更改serenity-bdd日志设置

时间:2015-10-01 12:10:24

标签: logging log4j thucydides serenity-bdd

我在项目中使用Serenity BDD进行测试自动化,使用IntelliJ IDEA作为IDE。 我想改变每次运行测试时可以看到的日志的格式和调试级别。

例如,我想只查看来自[main]线程的日志:

<li>

我知道如何进行回退,但我无法找到有关如何以及在何处更改Serenity日志设置的信息。

1 个答案:

答案 0 :(得分:1)

输出是由Serenity BDD测试的代码生成的。因此,为了修改输出,您应该更改所使用的记录器的记录属性。

slf4j是一个日志记录外观,它找到适当的记录器并将输出重定向到它。因此,您需要向应用程序添加记录器,然后按照您喜欢的方式对其进行配置。

例如,将logback添加到您的配置中。

将其作为依赖项添加到项目

<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>1.1.3</version>
</dependency>

添加src/test/resources/logback-test.xml以指导应记录哪些日志记录。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <Pattern>
                %-5level %logger{36} - %msg%n
            </Pattern>
        </layout>
    </appender>

    <!-- set DEBUG logging level for a package -->
    <logger name="com.my.package" level="debug">

    <!-- log warnings and errors by default -->
    <root level="warn">
        <appender-ref ref="STDOUT" />
    </root>

</configuration>

此配置会将警告和错误记录到控制台。并将记录包com.my.package的调试和信息消息。

如果您不喜欢logback,请使用log4j2或您选择的任何其他记录器。