使用 Log4j 在測試執行過程中打印執行日志


    導入“log4j-1.2.17.jar”包后,在Eclipse的測試代碼的工程根目錄中新建一個名為 Log4j.xml 文件,文件配置如下:

<?xml version="1.0" encoding="UTF-8"?>       
    <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'>

    <appender name="myConsole" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern"
                value="[%d{yyyy-MM-dd HH:mm:ss,SSS\} %-5p] [%t] %c{2\} - %m%n" />
        </layout>
        <!--過濾器設置輸出的級別 -->
<!--         <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="levelMin" value="debug" />
            <param name="levelMax" value="warn" />
            <param name="AcceptOnMatch" value="true" />
        </filter> -->
    </appender>

    <appender name="myFile" class="org.apache.log4j.RollingFileAppender">
        <!-- 設置日志輸出文件名 -->
        <param name="File" value="D:/MobileSpeedTestProj/output1.log" />
        <!-- 設置是否在重新啟動服務時,在原有日志的基礎添加新日志 -->
        <param name="Append" value="true" />
        <param name="MaxBackupIndex" value="10" />
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern"
                value="[%d{yyyy-MM-dd HH:mm:ss,SSS\} %-5p] [%t] %c{2\} - %m%n" />
        </layout>
    </appender>

    <!-- 根logger的設置 -->
    <root>
        <level value="INFO"/>  
        <appender-ref ref="myConsole" />
        <appender-ref ref="myFile" />
    </root>
</log4j:configuration>  

    新建 Log 工具類,打印測試過程的信息,用於監控和后續調試測試腳本:

package cn.hx.util;

import org.apache.log4j.Logger;

public class Log {
    // 初始化一個Logger對象
    private static Logger Log = Logger.getLogger(Logger.class.getName());

    // 定義一個靜態方法,可以打印自定義的某個測試用例開始執行的日志信息
    public static void startTestCase(String sTestCaseName) {
        Log.info("-------------------------------------------------------------------------");
        Log.info("**************** \"" + sTestCaseName + "\"測試用例開始 ****************");
    }

    // 定義一個靜態方法,可以打印自定義的某個測試用例結束執行的日志信息
    public static void endTestCase(String sTestCaseName) {
        Log.info("**************** \"" + sTestCaseName + "\"測試用例結束 ****************");
        Log.info("-------------------------------------------------------------------------");
    }

    // 定義一個靜態info方法,可以打印自定義的INFO級別的日志信息
    public static void info(String message) {
        Log.info(message);
    }

    // 定義一個靜態warn方法,可以打印自定義的INFO級別的日志信息
    public static void warn(String message) {
        Log.warn(message);
    }

    // 定義一個靜態error方法,可以打印自定義的INFO級別的日志信息
    public static void error(String message) {
        Log.error(message);
    }

    // 定義一個靜態fatal方法,可以打印自定義的INFO級別的日志信息
    public static void fatal(String message) {
        Log.fatal(message);
    }

    // 定義一個靜態debug方法,可以打印自定義的INFO級別的日志信息
    public static void debug(String message) {
        Log.debug(message);
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM