自动化测试架构整理
baselib类
提供公用api,读excel 中参数啊
SeBaselib类(****)
封装webdriver的核心api,形成自动化姓名api;
提供断言的相关方法,用例效验失败终止脚本和继续执行脚本方法。
详细的输入消息,便于调试;
向测试报告中写入消息的方法。
转化webdriver
se newsetup
生成seleniumBaselib的详细报告
FileHandler fileHandler=new FileHandler(“c:/se.log”);
fileHandler.setLevel(Level.INFO);
fileHandler.setFormatter(new SimpleFormatter());
logger.addHandler(fileHandler);
businesslib类
通过调用自动化项目的api,把常用场景写成方法便于编写自动化后续使用(eg 登录 登出等)
objectstore接口
存放要使用的页面元素
Reportlib
用来生成相应的html测试报告,通过logger在程序中打印调试信息
util.logging.Logger || log4j
获得logger对象:Logger logger=Logger.getLogger(xxxClass.class.getName)
severe、warning、info(默认)、config、fine、finer、finest
logger.setLevel(Level.WARNING);
logger信息写控制台、写在文档
handler对象从logger中获取logger信息,将信息导出,包括fileHandler
formatter(4个方法)包括simpleFormatter(默认) xmlformatter
format(LogRecord record)格式化给定的日志记录,并返回格式化后的字符串
formatMessage(LogRecord record)本地化和格式化来自logger的消息字符串
getHead(Handler h)返回一组格式化记录的头部字符串
getTail(Handler h)返回一组格式化记录的尾部字符串
要实现htmllog,自定义Formatter,继承抽象类formatter,并重新定义format()方法。其中将logrecord作为参数 此对象用于在日志框架和单个日志handler之间传递日志请求。
将logger信息写入文件:
FileHandler fileHandler=new FileHandler(“d:\\se.log”);//可以直接写入html文件
fileHandler.setlevel(Level.INFO);
fileHandler.setFormatter(new SimpleFormatter());
logger.addHandler(fileHandler);
logger.info(“**********”+p_caseName+”**********”);
inputDataStore接口
保存baselib、sebaselib、businesslib类中需要使用的非selenium元素的输入信息
public static final string
从properties中读取数据
messageoutput接口
存放baselib、businessbaselib(拆开,项目模块多时)中输出的消息(public static final String a=、
testcase
extend Sebaselib 后续使用的super将Sebaselib的方法
BussinessLib bl=new BussinessLib();;
bl.newsetup()
http://www.cnblogs.com/GGHHLL/archive/2013/06/07/3124097.html
http://databene.org/feed4testng.html
http://itindex.net/detail/49635-selenium2.41.0-%E8%B5%84%E6%BA%90