2.5 【配置环境】多浏览器驱动 (chrome、IE、Firefox)❀
来源:http://blog.csdn.net/huilan_same/article/details/51896672
http://www.cnblogs.com/thinkCoding/p/6497607.html
Selenium可支持的【真实】浏览器驱动:
PC端驱动:firefox、safari、ie、chrome、opera driver
移动端驱动: Windows Phone、Selendroid、ios-driver、Appium 支持iphone、ipad、android、FirefoxOS【第三方】
safari、ff都是以插件形式驱动浏览器本身的;ie、chrome都是通过二进制文件来驱动浏览器本身的;
这些driver都是直接启动并通过调用浏览器的底层接口来驱动浏览器的,因此具有最真实的用户场景模拟,主要用于进行web的兼容性测试使用。
selenium可支持的【伪浏览器】驱动:
HtmlUnit 、PhantomJS
它们都不是真正的在浏览器、都没有GUI,而是具有支持html、js等解析能力的类浏览器程序;这些程序不会渲染出网页的显示内容,但是支持页面元素的查找、JS的执行等;由于不进行css及GUI渲染,所以运行效率上会比真实浏览器要快很多,主要用在功能性测试上面。htmlunit是Java实现的类浏览器程序,包含在selenium server中,无需驱动,直接实例化即可;其js的解析引擎是Rhino。
Chrome浏览器驱动 下载
webdriver操作chrome浏览器的驱动程序:http://chromedriver.storage.googleapis.com/index.html
运行时,会有错误提示:unknown error: Runtime.executionContextCreated has invalid 'context'
>>说明安装的chromedriver不是最新版,有可能导致与chrome浏览器版本不兼容而报如下错误 。如上截图中,跳转到父目录,下载最新的版本即可。当前最新的版本是 2.28


chromedriver与chrome的版本也是要相互适宜的 。否则也会有报错。比如提示 “ 请停止使用以开发者模式运行的扩展程序 ”
| chromedriver版本 | 支持的Chrome版本 |
|---|---|
| v2.29 | v56-58 |
| v2.28 | v55-57 |
| v2.27 | v54-56 |
| v2.26 | v53-55 |
| v2.25 | v53-55 |
| v2.24 | v52-54 |
| v2.23 | v51-53 |
| v2.22 | v49-52 |
| v2.21 | v46-50 |
| v2.20 | v43-48 |
| v2.19 | v43-47 |
| v2.18 | v43-46 |
| v2.17 | v42-43 |
| v2.13 | v42-45 |
| v2.15 | v40-43 |
| v2.14 | v39-42 |
| v2.13 | v38-41 |
| v2.12 | v36-40 |
| v2.11 | v36-40 |
| v2.10 | v33-36 |
| v2.9 | v31-34 |
| v2.8 | v30-33 |
| v2.7 | v30-33 |
| v2.6 | v29-32 |
| v2.5 | v29-32 |
| v2.4 | v29-32 |
IE浏览器驱动 下载
webdriver操作IE浏览器的驱动程序:访问 http://docs.seleniumhq.org/download 搜索 64 bit Windows IE 下载IEDriverServer.exe

import org.openqa.selenium.ie.InternetExplorerDriver;
....
System.setProperty("webdriver.ie.driver","D:\\IEDriverServer.exe");
driver =new InternetExplorerDriver();
多浏览测试时,选择IE驱动,可能会启动失败,这个时候,需要:

Firefox 下载
旧版本安装原因:
Firefox不能安装太新的版本,不然会和selenium不能兼容。运行会有报错。比如提示:
org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7055
盘古开天以来Firefox的所有版本网址:http://ftp.mozilla.org/pub/firefox/releases/
1.1访问网址后 http://ftp.mozilla.org/pub/firefox/releases/ 。找到想要的版本。比如版本38.0.1
1.2 在点击38.0.1后,进入的网址 http://ftp.mozilla.org/pub/firefox/releases/38.0.1/ 中,选择 win32-EME-free
1.3 在点击win32-EME-free 后,进入的网址http://ftp.mozilla.org/pub/firefox/releases/38.0.1/win32-EME-free/ 中,搜索 zh-CN。即中文版。点击下载后安装即可。



HtmlUnit 伪浏览器驱动
htmlunit是Java实现的类浏览器程序,包含在selenium server中,无需驱动,直接实例化即可;其js的解析引擎是Rhino。
优点:HtmlUnitDriver不会实际打开浏览器,运行速度很快。对于用FireFox等浏览器来做测试的自动化测试用例,运行速度通常很慢,HtmlUnitDriver无疑是可以很好地解决这个问题。
缺点:HtmlUnitDriver对JavaScript的支持不够好,当页面上有复杂JavaScript时,经常会捕获不到页面元素
WebDriver driver = new HtmlUnitDriver(false);
driver.get(url);
.........
2.5 【配置环境】多浏览器驱动 (chrome、IE、Firefox)❀的更多相关文章
- Selenium2学习-005-WebUI自动化实战实例-003-三种浏览器(Chrome、Firefox、IE)启动脚本源代码
此文主要通过 三种浏览器(Chrome.Firefox.IE)启动脚本 功能,进行 Selenium2 三种浏览器启动方法的实战实例讲解.文中所附源代码于 2015-01-18 20:33 亲测通过, ...
- python环境配置selenium与IE、Chrome、Firefox、PhantomJS
安装.升级selenium pip install -U selenium 下载对应平台最新版的browser driver chrome: http://chromedriver.storage.g ...
- Python:Selenium 1:浏览器驱动
Selenium是一个用于测试网站的自动化测试工具,爬虫中也经常用到,支持各种浏览器包括Chrome.Firefox.Safari等主流界面浏览器,同时也支持phantomJS无界面浏览器. 自Web ...
- CSS Hack技术详解,支持IE 6-11、Chrome、FireFox、Safari、Opera 6-11、Chrome、FireFox、Safari、Opera6-11、Chrome、FireFox、Safari、Opera6-11、Chrome、FireFox、Safari、Opera
转自: http://www.365mini.com/page/css-hack-ie-chrome-firefox-safari-opera.htm 当前网络时代,各种各样的网页向我们展示着丰富多彩 ...
- selenium之 驱动环境配置chrome、firefox、IE
讲起动态网页获取我们一定会用到selenium,至于selenium在各种语言的开发代码很多,但是在我们兴致勃勃找了很多代码,要运行的时候,编译器只会给我们抛出异常,因为我们没有配置好环境.下面我将为 ...
- Python3+Selenium2完整的自动化测试实现之旅(二):IE和Chrome浏览器驱动配置
上一篇写了自动化测试需要的最基础环境配置,地址:https://www.cnblogs.com/tdp0108/p/10412073.html 当前市面上很多公司开发的应用软件都是BS架构,即基于浏览 ...
- selenium驱动chrome浏览器问题
selenium是一个浏览器自动化测试框架,以下介绍其如何驱动chrome浏览器? 1.下载与本地chrome版本对应的chromedriver.exe ,下载地址为http://npm.taobao ...
- UI自动化(selenium+python)之浏览器驱动chromedriver安装和配置
一.安装selenium 前提是已安装Python,python安装 自行百度,这里不概述 安装好python后,cmd打开终端窗口-->pip命令安装 :pip install seleniu ...
- 本地环境 XAMPP+phpStorm+XDebug+chrome配置和断点调试 注册方法
我的安装环境:XAMPP版本号V3.1.0 ;phpStorm版本8.0.3;windowsxp 32bit.您老人家先过目一下,不然怕影响意义. XAMPP.phpStorm 都直接安装在了D盘根目 ...
随机推荐
- Java 中多态的实现(下)
Java 中多态的另一个语法实现是重写.重载是通过静态分派实现的,重写则是通过动态分派实现的. 在学习动态分派之前,需要对虚拟机的知识有一个初步的了解. 虚拟机运行时数据区 运行 Java 程序时,虚 ...
- CodeForces 1144A
原题链接:https://vjudge.net/problem/CodeForces-1144A #include<bits/stdc++.h> using namespace std; ...
- Spring IoC详解
Spring IoC详解 1. 控制反转 控制反转是一种通过描述(XML或者注解)并通过第三方去产生或获取特定对象的方式.在Spring中实现控制反转的是IoC容器,其实现方法是依赖注入(Depend ...
- Server2012多用户远程桌面及问题解决记录
1.开启远程桌面 转载自 https://jingyan.baidu.com/article/c275f6ba9321fda33c756712.html 2.添加用户 转载自 https://jin ...
- Oracle库基本操作
--oracle 获取表名称,字段 with vA as ( SELECT USER_TAB_COLS.TABLE_NAME as 表名,USER_TAB_COLS.COLUMN_NAME as 列名 ...
- Gin_Cookie
1. cookie HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分两次请求是否由同一个客户端发出 Cookie就是解决HTTP协议无状态的方案之一,中文是小甜饼的意思 C ...
- [CF1304C] Air Conditioner
维护一区间 \([l,r]\) 人按照时间升序 考虑 \((l_i, h_i, t_i)\),当前的所有区间与这个区间取交 推到 \(t_{i+1}\) 时,所有区间的端点向两边扩张即可 注意把空掉的 ...
- Keep、小红书、美图…独角兽App能拿到新一轮救命钱吗?
大多数人热爱手机,不是因为时尚的外观或者结实的零部件,而是因琳琅满目的App赋予其太多的功能.智能手机最先是清理掉人类的零碎时间,现如今又开始肢解我们大块的时间,或者说,智能手机本身就是生活.在如此背 ...
- JDBC获取超出最大连接的连接池对象
- 马走日的解法(dfs)
马在中国象棋以日字形规则移动. 请编写一段程序,给定n*m大小的棋盘,以及马的初始位置(x,y),要求不能重复经过棋盘上的同一个点,计算马可以有多少途径遍历棋盘上的所有点. Input 第一行为整数T ...