🍏Log4j 2
Trong trường hợp bạn muốn ghi lại những events(sự kiên) trong quá trình chạy các test case, thì log4j là một trong những thư viện Java phổ biến hỗ trợ việc này.
▶️Đâu tiên mình thêm thư viện log4j2 vào trong file pom.xml
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.19.0</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.19.0</version>
</dependency>
▶️Tiếp theo tạo 1 file xml dưới folder src/test/resources tên là log4j2.xml có nội dung như dưới đây
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<Console name="ConsoleAppender" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console>
<File name="FileAppender" fileName="target/logs/ak37-${date:yyyyMMdd}.log" immediateFlush="false" append="true">
<PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</File>
</Appenders>
<Loggers>
<Root level="debug">
<AppenderRef ref="ConsoleAppender" />
<AppenderRef ref="FileAppender"/>
</Root>
</Loggers>
</Configuration>
▶️ Sau đó ta tạo một đoạn code Java để xem cách tạo file logs
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public class SeleniumTakeScreenshot {
private static final Logger logger = LogManager.getLogger(SeleniumTakeScreenshot.class);
public static void main(String[] args) {
System.out.println( "Hello, user!" );
logger.trace("We've just greeted the user!");
logger.debug("We've just greeted the user!");
logger.info("We've just greeted the user!");
logger.warn("We've just greeted the user!");
logger.error("We've just greeted the user!");
logger.fatal("We've just greeted the user!");
}
}
▶️Sau khi chạy xong bạn kiểm tra ở dưới folder target/logs/ sẽ thấy có 1 file log:
2022-09-24 13:15:35.767 [main] DEBUG features.elements.SeleniumTakeScreenshot - We've just greeted the user!
2022-09-24 13:15:35.768 [main] INFO features.elements.SeleniumTakeScreenshot - We've just greeted the user!
2022-09-24 13:15:35.769 [main] WARN features.elements.SeleniumTakeScreenshot - We've just greeted the user!
2022-09-24 13:15:35.769 [main] ERROR features.elements.SeleniumTakeScreenshot - We've just greeted the user!
2022-09-24 13:15:35.769 [main] FATAL features.elements.SeleniumTakeScreenshot - We've just greeted the user!
Last updated
Was this helpful?