一、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启动浏览器且加载插件的更多相关文章

  1. Selenium2(WebDriver)总结(一)---启动浏览器、设置profile&加载插件

    本文主要记录下在使用selenium2/webdriver时启动各种浏览器的方法.以及如何加载插件.定制浏览器信息(设置profile)等 环境搭建可参考我的另一篇文章:http://www.cnbl ...

  2. 练习启动各种浏览器的同时加载插件:Firefox, Chrome, IE

    # -*- coding:utf-8 -*-import osimport seleniumfrom selenium import webdriverfrom selenium.webdriver. ...

  3. 推荐一个 angular 图像加载插件

    推荐一个简单的 Angular 图片加载插件:vgSrc,插件根据图片资源的不同加载状态,显示不同图片,亲测兼容IE-8. 使用 推荐使用 bower 加载: bash bower install v ...

  4. selenium启动firefox时加载扩展

    有些时候,我们测试需要用到插件或者已经导入的证书(比如金融和安全加密行业),而selenium启动firefox时会打开一个新的,不含有任何插件和个人证书的firefox(等同于全新安装后第一次打开的 ...

  5. [WebKit]浏览器的加载与页面性能优化

    非常棒.非常系统的一份资料,值得阅读! 原文来自百度泛用户体验. 作者:nwind 本文将探讨浏览器渲染的loading过程,主要有2个目的: 了解浏览器在loading过程中的实现细节,具体都做了什 ...

  6. jQuery延迟加载(懒加载)插件 – jquery.lazyload.js-Web前端(W3Cways.com) - Web前端学习之路

    Lazy Load 是一个用 JavaScript 编写的 jQuery 插件. 它可以延迟加载长页面中的图片. 在浏览器可视区域外的图片不会被载入, 直到用户将页面滚动到它们所在的位置. 这与图片预 ...

  7. 使用gulp实现文件压缩及浏览器热加载

    一.安装gulp 首先,你要安装过nodejs,如果没有安装过的同学请自行下载.  先再命令行里输入   npm install gulp -g   下载gulp 二.创建gulp项目 创建一个你需要 ...

  8. jQuery图片懒加载插件jquery.lazyload.js使用实例注意事项说明

    jQuery图片懒加载插件jquery.lazyload.js使用实例注意事项说明 jquery.lazyload.js是一个用JavaScript编写的jQuery插件.它可以延迟加载长页面中的图片 ...

  9. jQuery懒加载插件jquery.lazyload.js使用说明实例

    jQuery懒加载插件jquery.lazyload.js使用说明实例很多网站都会用到‘图片懒加载’这种方式对网站进行优化,即延迟加载图片或符合某些条件才开始加载图片.懒加载原理:浏览器会自动对页面中 ...

随机推荐

  1. Spark Mllib里如何建立向量标签(图文详解)

    不多说,直接上干货! 注意: val pos = LabeledPoint(1, vd) val neg = LabeledPoint(2, vs) 除了这两种建立向量标签.还可以从数据库中获取固定格 ...

  2. CentOS7.5 搭建mycat1.6.6

    1.环境及版本 操作系统:   CentOS 7.5 数据库:MySQL 5.7.23 jdk:1.8.0_191 mycat:1.6.6.1 cat /etc/centos-release mysq ...

  3. Redis list(列表)

    Redis列表是简单的字符串列表,列表是有序的,列表中的元素可以重复. 可以添加一个元素到列表的头部(左边)或者尾部(右边) 一个列表最多可以包含 232 - 1 个元素 (40多亿). 1.lpus ...

  4. swift基础-3

    fallthrough 贯穿 case  可以不必写break 如果不需要知道区间内 每一项的值  可以使用 下划线 —— 来代替变量名 忽略 对该值的访问 for index in 1...5{ p ...

  5. 卡了很久的bug

    背景:在一个简单的项目中,通过循环前端传来的一个数组,使用mongodb条件查询数据,将满足条件的数据push进一个新数组,并返回至前端. 问题:每次调试到第五行,会自动跳过,直接执行12行,打印出来 ...

  6. 分享eclipse自动生成java注释方法

    设置方法介绍: eclipse中:Windows->Preferences->Java->Code Style->Code Template->Comments,然后对应 ...

  7. js插件设置innerHTML时,在IE8下报错“未知运行时错误”

    问题描述: 网站中使用了一个js插件,设置innerHTML时,在IE8下报错“未知运行时错误”: <div id=”divContainer”> <a name=”link”> ...

  8. MovieReview—Ghost in the Shell 2: Innocence(攻壳机动队2:无罪)

    Doll killing event            The movie was developed around a series of doll murders. Barthes and o ...

  9. Python:numpy数组转换为json格式

    在python中,如何将一个numpy数组转换为json格式? 这是最近遇到的一个问题,做个笔记. 假设arr为numpy数组,将其转换为json格式: 总体思想是①首先转换为python的list, ...

  10. 2002-2003 ACM-ICPC Northeastern European Regional Contest (NEERC 02) H Heroes Of Might And Magic (隐含dp)

    问题是求一个方案,实际隐含一个dp.法力是递减的,所以状态是DAG,对于一个确定的状态,我们贪心地希望英雄的血量尽量大. 分析:定义状态dp[i][p][h]表示是已经用了i的法力值,怪兽的位置在p, ...