Selenium自动化测试框架介绍
1.测试架构作用
a.可维护性
b.提高编写脚本效率
c.提高脚本的可读性
2.框架的几大要素:
Driver管理,脚本,数据,元素对象,LOG,报告,运行机制,失败用例重复运行
3.config.xml配置文件作用
a.全局配置文件
b.可以在这里面配置运行哪个浏览器
c.可以定义等待元素display的时间
解析config.xml文件
a.使用dom4j.jar, jaxen-1.1.1.jar
b.代码演示解析过程及方法
文件载入 :
XML解析:
XML节点判断:
XML处理:
XML读取:
4.配置文件的值持久化
a.新建一个类:com.test.util.Config.java
5.Driver管理
a.新建一个com.test.base.SeleniumDriver类
函数调用启动浏览器:
6.架构目录介绍
src/main/java(源代码)
com.hzcf.finance.bean包:
TestCase:通过构造函数向测试用例元素赋值来构建测试用例。
TestObject:通过构造函数向测试对象赋值。
com.hzcf.finance.data包:
TestCaseDataProvider:通过读取excel中数据来对测试数据进行参数化。
com.hzcf.finance.selenium包:
InitBrowser:设置浏览器类型。
OperationBrowser:根据InitBrowser中浏览器类型打开相应浏览器。
SeleniumMethod:元素操作及定位。
SeleniumMethod1:元素操作及定位PLUS版。
com.hzcf.finance.testng包:
TestngListener:测试监听。
com.hzcf.finance.readexcel包:
ReadObject:读取配置文件conf.xml中的对象。
ReadTestCase:读取testcase.xls定义的定位操作类型。
com.hzcf.finance.readxml包:
ReadConfig:读取配置文件构造函数。
com.hzcf.finance.report包:
ExecutionLog:日志配置。
com.hzcf.finance.testcase包:
ExcuteTestCase:测试用例管理。
ExcuteTestObject:定位类型转换。
com.hzcf.finance.testcase.common包:
TestCaseCommon:测试登陆初始化。
UploadPicturePage:上传文件方法。
com.hzcf.finance.testcase.scrpit包:
用于存放测试用例。
com.hzcf.finance.util包:
DateTimeUtil:获取系统时间并做格式转换。
ExcelUtil:Excel相关操作。
FileSystemUtil:文件操作。
FormatMoneyUtil:格式化大洋。
idNum:随机生成身份证号。
MailUtil:邮件配置。
Mobile:自动生成手机号。
MouseAndKeyboardUtil:鼠标键盘操作。
PrintScreenUtil:截图操作。
PropUtil:日志操作。
RandomSerial:随机数生成。
StringToCodeUtil:读取字符串解析成代码。
XMLUtil:读取xml文件并解析。
log4j.properties(日志配置)
conf配置文件夹
conf.xml:配置文件
testcase.xls:存放元素定位方法。
testdata.xls:存放数据驱动数据。
tsetobject.xls:存放页面定位元素。
execdriver文件夹
存放chromdriver.exe、IEDriverServer.exe文件。
output文件夹
存放logs和screenshots文件。
test-output(测试结果)
eclipse通过xml运行case后的测试结果存储位置;
uploadfiles存放上传文件信息。
测试用例.xml
testng测试配置文件,管理case运行
mail_conf.properties邮件配置文件。
pom.xml文件,maven jar包管理。
7.框架特性
a、支持多种常见的主流浏览器:
包括IE,Firefox,Chrome浏览器。
b、Integration(持续集成)
与CI工具结合,如与jenkins结合进行自动化集成。
c、自动生成测试报告
自动生成测试报告,运行完成后可自动发送邮件报告。