使用 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