http://zengxiantao.iteye.com/blog/1881706

1.环境配置:到网上下载log4j-1.2.17.jar包!完后 添加到 项目的build path 中即可!

2.在eclipse测试代码的根目录创建一个名为Log4j.xml 文件,

xml 的内容为:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
<appender name="fileAppender" class="org.apache.log4j.FileAppender">
<param name="Threshold" value="INFO"/>
<param name="File" value="logfile.log"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p [%c{1}] %m %n"/>
</layout>
</appender>
<root>
<level value="INFO"/>
<appender-ref ref="fileAppender"/>
</root>
</log4j:configuration>

log4j.properties

log4j.rootLogger=INFO, stdout, fileout
log4j.logger.TestProject=INFO
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5p %d{yyyy-MM-dd HH:mm:ss} %l %c : %m%n
log4j.appender.fileout=org.apache.log4j.FileAppender
log4j.appender.fileout.File=c:/test.log
log4j.appender.fileout.layout=org.apache.log4j.PatternLayout
log4j.appender.fileout.layout.ConversionPattern=%-5p %d{yyyy-MM-dd HH:mm:ss} %l %c : %m%n

Log类

 mport java.io.File;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator; public class Log { private static Logger logger; private static String filePath = "config/log4j.properties"; private static boolean flag = false; private static synchronized void getPropertyFile() {
logger = Logger.getLogger("TestProject");
PropertyConfigurator.configure(new File(filePath).getAbsolutePath());
flag = true;
} private static void getFlag() {
if (flag == false)
Log.getPropertyFile();
} public static void logInfo(String message) {
Log.getFlag();
logger.info(message);
} public static void logError(String message) {
Log.getFlag();
logger.error(message);
} public static void logWarn(String message) {
Log.getFlag();
logger.warn(message);
} }

3.创建一个工具类 Log ;

package cn.gloryroad;

import org.apache.log4j.Logger;

public class Log {

    private static Logger Log=Logger.getLogger(Log.class.getName());
public static void startTextCase(String sTextCaseName){
Log.info("-----------------------------------------------------------------------------------------");
Log.info("***********************************"+sTextCaseName+"*************************************");
} public static void endTestCase(String sTextCaseName ){ System.out.println("****************测试用例结束******************************");
System.out.println("----------------------------------------------------------"); System.out.println(); }
public static void info(String message){
Log.info(message);
} //定义个warn方法 打印 warn级别的信息 ;
public static void warn(String message){
Log.warn(message); }
//定义个 error 方法 打印自定义的错误信息 ;
public static void error(String message){
Log.error(message); }
//fatal(重大的 致命的) 定义一个fatal 方法 ,打印重大级别的信息 ;
public static void fatal(String message){
Log.fatal(message); }
//定义一个debug方法打印自定义的 debug信息 !
public static void debug(String message){ Log.debug(message); } }

4.测试代码

package scr.comm.testComm;

import org.apache.log4j.xml.DOMConfigurator;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver; import cn.gloryroad.Log; import scr.comm.OpenBrowserInfo; public class TestComm { public static void main(String[] args) {
DOMConfigurator.configure("Log4j.xml");
String url="http://www.sogou.com/";
OpenBrowserInfo openinfo =new OpenBrowserInfo() ;
openinfo.SystemSetProperty();
WebDriver dr =new FirefoxDriver();
Log.startTextCase("打开搜狗浏览器");
dr.navigate().to(url);
Log.info("点击搜索按钮!");
dr.findElement(By.id("stb")).click();
Log.info("close current borwser!");
dr.quit();
Log.endTestCase("souguo"); } }

5.代码执行完毕后会在workspace下产生一个文件filelog.log

使用Log4在测试过程中打印执行日志 及配置log4j.properties!的更多相关文章

  1. 2.9 log4j 在测试过程中打印执行日志

    Apache Log4j配置说明/log4j的分层打印    http://blog.csdn.net/zzy7075/article/details/53763728

  2. Selenium WebDriver Log4j打印执行日志

    在自动化测试脚本的执行过程中,使用log4j在日志文件中打印执行日志,用于监控和后续调试脚本. Log4j.xml 文件 <log4j:configuration xmlns:log4j=&qu ...

  3. 【他山之石】mybatis打印sql日志 相关配置

    背景:mybatis的sql日志打印对我来说一直比较迷,哪怕看过网上很多博客后还是这样,这两天刚好又遇到了问题,要查sql不得已又来查阅,这次终于搞定了. mybatis是有提供日志功能支持的,目前支 ...

  4. django中邮件、日志的配置

    邮件的发送及配置 # 配置邮件 EMAIL_USE_SSL = True EMAIL_HOST = 'smtp.qq.com' # 如果是 163 改成 smtp.163.com EMAIL_PORT ...

  5. log4j 配置日志输出(log4j.properties)

    轉: https://blog.csdn.net/qq_29166327/article/details/80467593 一.入门log4j实例 1.1 下载解压log4j.jar(地址:http: ...

  6. springMVC项目中配置log4j.properties路径

    log4j.properties不打到war包中,单独写到一个存放配置文件的文件夹中,在容器中将该文件夹放入classpath,在web.xml中可以如下配置: <context-param&g ...

  7. 在android中使用logback-android日志框架配置 slf4j + logback

    为什么使用 slf4j + logback logbak定位于log4j的替代者,logback同样支持slf4j,方便被替换.在Android平台上,我在使用log4中遇到tag混乱的问题.相比lo ...

  8. IDEA中 mybatis-config、applicationContext.xml、log4j.properties、SpringMVC等文件没有图标标识符号,不是一个xml文件

    1. 举例说明 mybatis-config.xml文件不显示图标,识别不出该xml文件 2. 解决办法 1)先点击 File -> Settings-,然后贴入下面代码 (2) 具体操作如下图 ...

  9. java中关于log日志

    博:http://zhw2527.iteye.com/blog/1006302 http://zhw2527.iteye.com/blog/1099658 在项目开发中,记录错误日志是一个很有必要功能 ...

随机推荐

  1. 图 ADT接口 遍历运算 常规运算 邻接矩阵实现

    Graph.h   (图的结构, 遍历, 常规操作接口) /*定义图的最大定点数, 它要大于等于具体图的顶点树n*/ #define MaxVertexNum 12 /*定义图的最大边数,它要大于等于 ...

  2. Go 跨域请求问题

    在使用go语言写测试服务的时候遇到了前端跨域请求问题,只需在go中加入 w.Header().Set("Access-Control-Allow-Origin", "*& ...

  3. spark 例子count(distinct 字段)

    spark 例子count(distinct 字段) 例子描述: 有个网站访问日志,有4个字段:(用户id,用户名,访问次数,访问网站) 需要统计: 1.用户的访问总次数去重 2.用户一共访问了多少种 ...

  4. GNU Radio在SDR领域的应用

    1 Software Defined Radio 软件无线电(Software Defined Radio,SDR)是一种实现无线通信的新概念和体制.其中以往只能在硬件中实现的组件(例如混频器,滤波器 ...

  5. 2016-2017-20155329 《Java程序设计》第十周学习总结

    学号 2016-2017-20155329 <Java程序设计>第十周学习总结 教材学习内容总结 学习目标 了解计算机网络基础 OSI分层(7层):物理层.数据链路层.网络层.传输层.会话 ...

  6. 20155330 2016-2017-2 《Java程序设计》第四周学习总结

    20155330 2016-2017-2 <Java程序设计>第四周学习总结 教材学习内容总结 学习目标 理解封装.继承.多态的关系 理解抽象类与接口的区别 掌握S.O.L.I.D原则 了 ...

  7. TCP三次握手和四次挥手以及11种状态

    1.三次握手 置位概念:根据TCP的包头字段,存在3个重要的标识ACK.SYN.FIN ACK:表示验证字段 SYN:位数置1,表示建立TCP连接 FIN:位数置1,表示断开TCP连接 三次握手过程说 ...

  8. .NET Core单元测试之搞死开发的覆盖率统计(coverlet + ReportGenerator )

    .NET Core单元测试之搞死开发的覆盖率统计 这两天在给项目补单元测试,dalao们要求要看一下测试覆盖率 翻了一波官方test命令覆盖率倒是有支持了,然而某个更新日志里面写着 ["Su ...

  9. 解决Extjs有IE下z-index属性的问题

    在用Extjs时,有时候,在Google浏览器上面没有任何问题,但是相同的页面在IE下面就会有问题,直接报错,点击中断,进行后可以看到如下的信息: Google里面没这个问题,加一句代码就能解决在窗体 ...

  10. [Cocos2d-html5]关于压缩

    使用的是2.2版本,压缩时要注意文件顺序,main.js文件最好排在最后一个,避免错误.