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、自动生成测试报告

自动生成测试报告,运行完成后可自动发送邮件报告。

Selenium自动化测试框架介绍的更多相关文章

  1. 『心善渊』Selenium3.0基础 — 1、Selenium自动化测试框架介绍

    目录 1.Selenium介绍 2.Selenium的特点 3.Selenium版本说明 4.拓展:WebDriver与Selenium RC的区别 5.Webdriver工作原理 1.Seleniu ...

  2. Selenium自动化测试框架入门整理

    ​​关注嘉为科技,获取运维新知 本文主要针对Selenium自动化测试框架入门整理,只涉及总体功能及框架要点介绍说明,以及使用前提技术基础要求整理说明.作为开发人员.测试人员入门参考. 本文参考:Se ...

  3. 《Selenium自动化测试实战:基于Python》Selenium自动化测试框架入门

    第1章  Selenium自动化测试框架入门 1.1  Selenium自动化测试框架概述 说到目前流行的自动化测试工具,相信只要做过软件测试相关工作,就一定听说过Selenium. 图1-1是某企业 ...

  4. 《手把手教你》系列基础篇(七十五)-java+ selenium自动化测试-框架设计基础-TestNG实现DDT - 中篇(详解教程)

    1.简介 上一篇中介绍了DataProvider如何传递参数,以及和一些其他方法结合传递参数,今天宏哥接着把剩下的一些常用的也做一下简单的介绍和分享. 2.项目实战1 @DataProvider + ...

  5. 《手把手教你》系列基础篇(七十六)-java+ selenium自动化测试-框架设计基础-TestNG实现DDT - 下篇(详解教程)

    1.简介 今天这一篇宏哥主要是结合实际工作中将遇到的测试场景和前边两篇学习的知识结合起来给大家讲解和分享一下,希望以后大家在以后遇到其他的测试场景也可以将自己的所学的知识应用到测试场景中. 2.测试场 ...

  6. 《手把手教你》系列基础篇(七十八)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试- 中篇(详解教程)

    1.简介 上一篇讲解了依赖测试的各种方法,今天继续讲解依赖测试的方法,这一篇主要是讲解和分享通过xml文件配置组名依赖方法( 主要是测试组的用法).废话不说,直接上干货. 2.实例 测试组:一个组可包 ...

  7. 《手把手教你》系列基础篇(八十)-java+ selenium自动化测试-框架设计基础-TestNG依赖测试-番外篇(详解教程)

    1.简介 经过前边几篇知识点的介绍,今天宏哥就在实际测试中应用一下前边所学的依赖测试.这一篇主要介绍在TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题.如果不用de ...

  8. 《手把手教你》系列基础篇(八十三)-java+ selenium自动化测试-框架设计基础-TestNG测试报告-下篇(详解教程)

    1.简介 其实前边好像简单的提到过测试报告,宏哥觉得这部分比较重要,就着重讲解和介绍一下.报告是任何测试执行中最重要的部分,因为它可以帮助用户了解测试执行的结果.失败点和失败原因.另一方面,日志记录对 ...

  9. 《手把手教你》系列基础篇(八十四)-java+ selenium自动化测试-框架设计基础-TestNG日志-上篇(详解教程)

    1.简介 TestNG还为我们提供了测试的记录功能-日志.例如,在运行测试用例期间,用户希望在控制台中记录一些信息.信息可以是任何细节取决于目的.牢记我们正在使用Selenium进行测试,我们需要有助 ...

随机推荐

  1. PHP 模拟POST请求

    /** * 模拟post进行url请求 * @param string $url * @param array $post */ function request_post($url, $post = ...

  2. dubbo服务自动化测试搭建

    java实现dubbo的消费者服务编写:ruby实现消费者服务的接口测试:通过消费者间接测试dubbo服务接口的逻辑 内容包括:dubbo服务本地调用环境搭建,dubbo服务启动,消费者部署,脚本编写 ...

  3. OAF_文件系列11_实现OAF读写Excel包JXL和POI的区别(概念)

    20150803 Created By BaoXinjian

  4. 无废话WCF

    1.什么是WCF 2.WCF应用的通信过程 3.WCF宿主 4.WCF配置文件 5.WCF通信模式 6.一个简单的DEMO

  5. 浅析c#内存泄漏

    一直以来都对内存泄露和内存溢出理解的不是很深刻.在网上看到了几篇文章,于是整理了一下自己对内存泄露和内存溢出的理解. 一.概念 内存溢出:指程序在运行的过程中,程序对内存的需求超过了超过了计算机分配给 ...

  6. [ActionScript 3.0] 将组件 SWC 文件导入 Flash

    在向其它开发人员分发组件时,您可以包含以下说明,以便他们能够立即安装和使用组件.  导入 SWC 文件: 将 SWC 文件复制到 Configuration/Components 目录中. 重新启动 ...

  7. ubuntu 14.04 compiz的ALT + TAB切换程序

    安装完ubuntu,发现不能使用ALT + TAB切换应用程序,翻遍所有百度结果,没有可行,都是拷这个拷那个...真实无语...FQgoogle,看的第一个就完美解决.记录下来,方便国人少走弯路. 首 ...

  8. 关于Oracle GoldenGate中Extract的checkpoint的理解 转载

    什么是checkpoint? 在Oracle 数据库中checkpoint的意思是将内存中的脏数据强制写入到磁盘的事件,其作用是保持内存中的数据与磁盘上的数据一致.SCN是用来描述该事件发生的准确的时 ...

  9. 解决window2012 IIS8 配置的网站无法下载exe文件的问题

    window2012 IIS8 配置网站下载exe文件.解决window2012 IIS8 配置的网站无法下载exe文件的问题 配置好网站后,无法下载网站上的exe文件,zip文件确可以下载的.右键点 ...

  10. 慕课网-Java入门第一季-7-4 编程练习

    来源:http://www.imooc.com/code/1634 小伙伴们,请根据所学知识,参考注释,在代码编辑器中将代码补充完整.编写一个 Java 程序,实现输出学生年龄的最大值 要求: 1. ...