selenium实现UI自动化
1.selenium简介
selenium是支持web浏览器自动化的一系列工具和库的综合项目。具有支持linux、windows等多个平台,支持Firefox、chrome等多种主流浏览器;支持Java、Python等多种语言。
主要包括的三大工具有:
WebDriver(rc 1.0)、IDE、Grid
selenium webDriver
它是selenium2.0之后的核心,webDriver通过原生浏览器支持或者浏览器扩展直接控制浏览器,webDriver通过各个浏览器开发,取代了嵌入到被测web中的javaScript(selenium 1.0)
webDriver的核心方法和属性:
- 浏览器的名称:driver.name
- 当前的url: driver.current_url
- 当前页面标题:driver.title
- 当前页面源码:driver.page_source
- 窗口句柄:driver.current_window_handle
- 当前窗口所有句柄:driver.window_ handles
selenium IDE
录制回放工具。提供记录和回放功能。允许开发测试人员以Java、Python等多种语言导出录制的脚本。可以在selenium rc或者webDriver中使用这些脚本
selenium grid
允许我们在多台计算机上并行测试,并集中管理不同浏览器版本和浏览器配置
配图……
2.UI自动化实现
webDriver的工作原理如下:
- 对于每一条Selenium脚本,一个http请求会被创建并发送给浏览器的驱动
- 浏览器驱动中包含了一个http server ,用来接收这些http 请求
- Http Server 接收到请求后根据请求来具体操控对应的浏览器
- 浏览器执行具体的步骤
- 浏览器将步骤执行结果返回给http server
- Http server 又将结果返回给Selenium的脚本,如果是错误的http代码我们就会在控制台看到对应的报错信息
webDriver的核心方法和属性
属性如下:
——
核心方法: