1需要用到log4j-1.2.X.jar包,怎么引用就不多说了。
2在根目录下新建log4j.xml,http://www.cnblogs.com/guogangj/p/3931397.html ,这个里面讲的代码直接就能用,上面注释也比较详细。生成log按照日期命名,在${user.home}/logs/website/info.log这个路径下。
3在util包里面增加log的一些方法
import org.apache.log4j.Logger;
public class Log {
private static Logger Log = Logger.getLogger(Log.class.getName());
public static void startTestCase(String sTestCaseName){
Log.info("---------------------------------------------------");
Log.info("---------- "+sTestCaseName+" ----------------");
}
public static void endTestCase(String sTestCaseName){
Log.info("---------- "+"测试用例执行结束"+" ----------------");
Log.info("----------------------------------------------------");
}
public static void info(String message){
Log.info(message);
}
public static void warn(String message){
Log.warn(message);
}
public static void error(String message){
Log.error(message);
}
public static void fatal(String message){
Log.fatal(message);
}
public static void debug(String message){
Log.debug(message);
}
}
- 4在ui自动化脚本的代码里面如何使用,在待测方法前增加下面的代码,如果想做的细致些,可以在每个步骤上加上日志,方便查看
@org.testng.annotations.BeforeClass
public void BeforeClass(){
DOMConfigurator.configure("log4j.xml");
}
@Test (priority=0,enabled=true)
public void testLoginAndPage() throws MalformedURLException{
Log.info(……);
Log.warn(……);
……
}
输出的日志类似于:
- 5为什么要引入日志
- ui自动化受到页面因素不太稳定,如果没有详细的日志辅助判断,无法判断真是的问题出在哪里,比如如果前面的程序就已经报错,后续会提示XX元素找不到,但是这个元素命名还在,为了复现问题,不得不重新跑一遍,肉眼盯着。为了提升效率,做到无人值守,所以日志需要打印的详细一些。
- 这些日志是为了排查问题用,所以不需要打印到report里面,report里面还是应该保持整洁明了。