Selenium2启动浏览器且加载插件
一、SELENIUM2启动浏览器
注意: SELENIUM2在启动浏览器时,都是启动一个干净的没有任务 插件及cookies信息的浏览器,即使是你之前的浏览器有设置过代理,到自动化启动时,也是没有代理的模式。
1.启动firefox浏览器:建议使用32.x版本的火狐浏览器,要不有可能会出问题。
启动不在默认安装路径的firefox浏览器:
2.启动chrome浏览器:
需要chromedriver.exe的支持,驱动下载地址(http://docs.seleniumhq.org/download/)
如果不想用setProperty的方式,也可以将chromedriver.exe 放在”C:\Windows\System32”路径下并重启电脑即可
3.启动IE浏览器:
需要IEDriverServer.exe 的支持,且 IE的exe文件分64位与32位,请根据自已的机器选择相应的exe文件。
启动代码如下:
二、SELENIUM2启动浏览器时加载插件
加载插件的作用:有的是为了调试,也有的是被测试的系统本身需要插件
Firefox下加载firebug插件:
Chrome下加载crx插件:
且IE下没有插件加载。
三、SELENIUM2启动firefox时的profile设置
在firefox地址栏中输入about:config,可以看到有哪些可以设置
举例:导出文件的地址设置
3.启用默认情况下被firefox禁用的功能,以本地事件例,很简单直接设置为true就可以了。
特别重要:启动时,每次都是一个干净的firefox,如果要启动本机器的firefox的配置:
如果在机器B上要启动机器A上的firefox配置,则先导出A的配置,然后加载:
将A机器上的Profiles文件夹”C:\Users\cloudchen\AppData\Local\Mozilla\Firefox\Profiles”给拷贝出来
四、SELENIUM2启动chrome时的profile设置
特别重要:将user data文件夹” C:\Users\cloudchen\AppData\Local\Google\Chrome\User Data”拷贝出来
请自己验证一下,加不加以下代码的区别:
五、SELENIUM2启动IE时的设置
特别重要:启动IE时,需关闭保护模式。 4个红框标记的区域中的保护模式的checkbox 都要uncheck
也可以代码关闭:
完整代码如下:
package com.selenium.test; import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebDriver.Navigation;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.firefox.FirefoxProfile;
import org.openqa.selenium.ie.InternetExplorerDriver; public class launchBrowser {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
launchChrome();
} public static void launchFireFox() {
FirefoxProfile firefoxProfile = new FirefoxProfile(); firefoxProfile.setPreference("browser.download.folderList", 2);
firefoxProfile.setPreference(
"browser.download.manager.showWhenStarting", false);
firefoxProfile.setPreference("browser.download.dir", "d:\\test");
firefoxProfile.setPreference("browser.helperApps.neverAsk.saveToDisk",
"text/csv"); String proxyIp = "child-prc.intel.com";
int proxyPort = 913;
firefoxProfile.setPreference("network.proxy.type", 1);
firefoxProfile.setPreference("network.proxy.http", proxyIp);
firefoxProfile.setPreference("network.proxy.http_port", proxyPort);
firefoxProfile.setPreference("network.proxy.ssl", proxyIp);
firefoxProfile.setPreference("network.proxy.ssl_port", proxyPort); firefoxProfile
.setPreference("network.proxy.share_proxy_settings", true);
firefoxProfile
.setPreference("network.proxy.no_proxies_on", "localhost"); WebDriver driver = new FirefoxDriver(firefoxProfile);
// WebDriver driver = new FirefoxDriver();
Navigation navigation = driver.navigate();
navigation.to("https://baidu.com");
// driver.close();
// driver = null;
} public static void launchChrome() {
System.setProperty("webdriver.chrome.driver", "files/chromedriver.exe");
WebDriver driver = new ChromeDriver();
Navigation navigation = driver.navigate();
navigation.to("https://www.baidu.com");
driver.close();
driver = null;
} public static void launchIE() {
System.setProperty("webdriver.ie.driver", "files/iedriver64.exe");
WebDriver driver = new InternetExplorerDriver();
Navigation navigation = driver.navigate();
navigation.to("https://www.baidu.com");
driver.close();
driver = null;
}
}
最后打个广告,不要介意哦~
最近我在Dataguru学了《软件自动化测试Selenium2》网络课程,挺不错的,你可以来看看!要是想报名,可以用我的优惠码 G863,立减你50%的固定学费!
链接:http://www.dataguru.cn/invite.php?invitecode=G863
Selenium2启动浏览器且加载插件的更多相关文章
- Selenium2(WebDriver)总结(一)---启动浏览器、设置profile&加载插件
本文主要记录下在使用selenium2/webdriver时启动各种浏览器的方法.以及如何加载插件.定制浏览器信息(设置profile)等 环境搭建可参考我的另一篇文章:http://www.cnbl ...
- 练习启动各种浏览器的同时加载插件:Firefox, Chrome, IE
# -*- coding:utf-8 -*-import osimport seleniumfrom selenium import webdriverfrom selenium.webdriver. ...
- 推荐一个 angular 图像加载插件
推荐一个简单的 Angular 图片加载插件:vgSrc,插件根据图片资源的不同加载状态,显示不同图片,亲测兼容IE-8. 使用 推荐使用 bower 加载: bash bower install v ...
- selenium启动firefox时加载扩展
有些时候,我们测试需要用到插件或者已经导入的证书(比如金融和安全加密行业),而selenium启动firefox时会打开一个新的,不含有任何插件和个人证书的firefox(等同于全新安装后第一次打开的 ...
- [WebKit]浏览器的加载与页面性能优化
非常棒.非常系统的一份资料,值得阅读! 原文来自百度泛用户体验. 作者:nwind 本文将探讨浏览器渲染的loading过程,主要有2个目的: 了解浏览器在loading过程中的实现细节,具体都做了什 ...
- jQuery延迟加载(懒加载)插件 – jquery.lazyload.js-Web前端(W3Cways.com) - Web前端学习之路
Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预 ...
- 使用gulp实现文件压缩及浏览器热加载
一.安装gulp 首先,你要安装过nodejs,如果没有安装过的同学请自行下载. 先再命令行里输入 npm install gulp -g 下载gulp 二.创建gulp项目 创建一个你需要 ...
- jQuery图片懒加载插件jquery.lazyload.js使用实例注意事项说明
jQuery图片懒加载插件jquery.lazyload.js使用实例注意事项说明 jquery.lazyload.js是一个用JavaScript编写的jQuery插件.它可以延迟加载长页面中的图片 ...
- jQuery懒加载插件jquery.lazyload.js使用说明实例
jQuery懒加载插件jquery.lazyload.js使用说明实例很多网站都会用到‘图片懒加载’这种方式对网站进行优化,即延迟加载图片或符合某些条件才开始加载图片.懒加载原理:浏览器会自动对页面中 ...
随机推荐
- 使用centos7的wall防火墙可能存在失效问题
centos7有自己新的防火墙,但是仍然带有centos6.5的iptable防火墙,当新防火墙不稳定,失效时,可以采用老防火墙 以上都是在vm虚拟机上发现的问题 参考文章 https://www.c ...
- .net创建activex实现摄像头拍照
using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices ...
- JAVA基础之Map接口
个人理解: 个人感觉Map接口以后会经常用到,可以很清晰地查找某个对象,要熟悉其四种遍历方法.特别注意其键值对的键不能是重复的,有想定义有序存取的话,可以使用LinkedHashMap集合.不过定义自 ...
- 定时器 & 日期时间对象 & 正则
1 JavaScript 计时事件 通过使用 JavaScript,有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行,这称之为计时事件. 两个关键方法是: setInterv ...
- 关于dataTable 生成JSON 树
背景: POSTGRESL + C# + DHTMLX SUIT 一个表生成一个JSON串,这个不是很麻烦: 1.在数据库(postges)中: json_agg(row_to_json(t)) ...
- 【Unity3D】射箭打靶游戏(简单工厂+物理引擎编程)
打靶游戏: 1.靶对象为 5 环,按环计分: 2.箭对象,射中后要插在靶上: 3.游戏仅一轮,无限 trials: 增强要求: 添加一个风向和强度标志,提高难度 游戏成品图: U ...
- WebView全面学习(一)--常用类和方法
WebView全面学习(一)--常用类和方法 WebView本质上是一个View,他基于webkit引擎来展示web页面 在Android不同的版本webkit内核有所区别,从Android版本上看, ...
- python中的getcwd
Help on built-in function getcwd in module posix: getcwd(...) getcwd() -> path Return a ...
- Linux下安装并配置SSH服务
一.使用命令检测Linux系统上是否已经安装了SSH服务:(命令:rpm -qa |grep ssh) 二.如果没有安装SSH软件包,可以通过yum 或rpm安装包进行安装(命令:yum instal ...
- 深度探索C++对象模型——关于对象
引言 以前读<C++ Primer>的时候一直有一种感觉:该书虽然是C++入门书籍,初学者读之却觉晦涩,越往后读越是如此.等到稍加理解后再读该书,顿感醍醐灌顶,茅塞顿开.究其原因,在于原作 ...