5.4.2 使用配置启动firefox
什么是firefoxprofile?简单的来说就是个人定制,比如你设置自己访问主页,禁用加载图片这些个性化的设置,都可以保存到一个文件夹下,就是firefoxprofile,下次使用时候,加载该firefoxprofile,就可以让自己火狐浏览器设置跟之前配置一样。
为什么selenium要用firefoxprofile?我们自动化测试的时候,有时不需要图片加载出来,提高浏览器加载速度,从而提高脚本的执行速度。另外在一些网络比较差的环境下,禁用css、图片等加载可以提高访问速度
1.使用firefox的本地配置加载浏览器
使用本地配置加载浏览器,代码如下。
这样运行后,可以看到firebug等插件都已启动。
练习:假设做性能测试时,需要获取某个状况下的页面网络运行参数。要求完成相应练习,加载浏览器后,自动打开firebug的网络选项卡,并导出har文件到指定文件夹中。
1)安装插件netExport(下载),会在firebug面板中生成导出按钮。导出后的har文件,可以使用httpWatch(下载)查看。
2)firebug的网络选项卡自动打开
可在firefox中的about:config页面中,找到allPagesActivation属性为on,进行如下配置。
3)网络日志自动导出
--导出地址设置
--点亮导出绿灯的设置,自动保存har设置
--在代码最后加上refresh,如下
2.在机器B上启动机器A上的firefox配置
1)将机器A上的Profiles文件夹拷贝到files文件夹下
路径为“C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles\gehvgmfb.default"。
或者打开firefox浏览器,点击“帮助”并选择“故障排除信息”菜单项,以打开故障排除信息标签页。在“应用程序概要”部分,点击 显示文件夹 按钮,将打开一个窗口显示您的配置文件。
2)使用配置启动浏览器
3.启动firefox时设置profile
1)在firefox地址栏中输入about:config,可以看到有哪些参数可以设置
2)举例:设置浏览器下载文件的保存地址
4.启动firefox时加载插件
首先,要知道我们为什么需要加载插件?原因是webdriver在启动浏览器时,启动的一个干净的没有任务、插件及cookies信息的浏览器(即使你本机的firefox安装了某些插件,webdriver启动firefox也是没有这些插件的),但是有可能被测系统本身需要插件或者需要调试等等,此时可以用如下方法在启动firefox时加载插件,下面示例加载firebug插件:

1 public static void StartFireFoxLoadPlugin(){
2 System.out.println("start firefox browser...");
3 System.setProperty("webdriver.firefox.bin",
4 "D:/Program Files/Mozilla Firefox/firefox.exe");
5 File file = new File("files/firebug-2.0.7-fx.xpi");
6 FirefoxProfile profile = new FirefoxProfile();
7 try {
8 profile.addExtension(file);
9 } catch (IOException e) {
10 e.printStackTrace();
11 }
12 profile.setPreference("extensions.firebug.currentVersion", "2.0.7");
13 //active firebug extensions
14 profile.setPreference("extensions.firebug.allPagesActivation", "on");
15 WebDriver driver = new FirefoxDriver(profile);
16 driver.get("http://www.baidu.com");
17 System.out.println("start firefox browser succeed...");
18 }

5.4.2 使用配置启动firefox的更多相关文章
- selenium启动firefox、ie、chrome各浏览器方法
1.启动firefox浏览器 a.如果你的本地firefox是默认路径安装的话,如下方式即可启动浏览器 WebDriver driver = new FirefoxDriver(); driver.g ...
- selenium各种场景下的启动Firefox
开始学习selenium时为了启动Firefox可谓费尽周折,在大神的帮助下才堪堪搞定,走出了selenium的第一步:jdk1.8 + selenium_2.46 + Firefox国际版40.0. ...
- 【Selenium专题】WebDriver启动firefox浏览器
firefox浏览器不需要下载驱动,原生支持,以下是代码运行环境,firefox启动封装在方法startFirefox()中 import org.openqa.selenium.WebDriver; ...
- 测试自动化:java+selenium3 UI自动化(2) - 启动Firefox
1. selenium和浏览器 基于selenium的这套自动化体系,其实现关键就在于对于各浏览器的顺畅操作. 事实上当selenium刚开始起家的时候,他使用的还是javascript注入的方式来驱 ...
- Selenium2学习-042-Selenium3启动Firefox Version 48.x浏览器(ff 原生 geckodriver 诞生)
今天又被坑了一把,不知谁把 Slave 机的火狐浏览器版本升级为了 48 的版本,导致网页自动化测试脚本无法启动火狐的浏览器,相关的网页自动化脚本全线飘红(可惜不是股票,哈哈哈...),报版本不兼容的 ...
- selenium启动firefox时加载扩展
有些时候,我们测试需要用到插件或者已经导入的证书(比如金融和安全加密行业),而selenium启动firefox时会打开一个新的,不含有任何插件和个人证书的firefox(等同于全新安装后第一次打开的 ...
- windows下配置启动多个mysql服务
查找配置做下记录 先安装mysql5.6,安装不在介绍 接下来配置启动另一个mysql服务, 1:先到服务里停止在运行的mysql服务 2:到mysql的安装目录下(默认安装目录在c:\Program ...
- ibatis动态sql配置启动时提示:The content of elements must consist of well-formed character data...
ibatis动态sql配置启动时提示:The content of elements must consist of well-formed character data... 2012-07-18 ...
- HBase配置&启动脚本分析
本文档基于hbase-0.96.1.1-cdh5.0.2,对HBase配置&启动脚本进行分析 date:2016/8/4 author:wangxl HBase配置&启动脚本分析 剔除 ...
随机推荐
- 自定义ViewPager控制是否滑动
package com.lvshandian.menshen.view;/** * Created by zhang on 2016/11/8. * 创建自定义滑动,禁止滑动的ViewPager */ ...
- 双击Button按钮后执行的函数
在MFC中,当在用户界面拖入一个button后,双击会进入cpp文件,实现一个按钮点击的方法如: void CtestcontorlDlg::OnBnClickedButton() { : } 理解: ...
- 无法为表空间 XX 中的段创建 INITIAL 区
select * from dba_data_files where TABLESPACE_NAME='XX'--找到表空间文件 alter database datafile '/opt/app/o ...
- Cheatsheet: 2013 07.21 ~ 07.31
Mobile Android vs. iOS: Comparing the Development Process of the GQueues Mobile Apps Android Studio ...
- switch语句和for循环
switch语句: 1. switch 后面小括号中表达式的值必须是整型或字符型 2. case后面的值可以是常量数值,如:1.日:也可以是一个常量表达式,如:2+2:但 不能是变量或带有变量的表达式 ...
- 中国用户mac上快速安装nodejs
mac nodejs 安装 1.http://npm.taobao.org/mirrors/node/latest/ 进入这个域名,然后找到最新的pkg包下载过来 2.双击pkg包,下一步下一步安装 ...
- 强制性签出被人没有签入的文件(在.net开发vs中)
灵感,是天才的女神.她并不步履蹒跚地走过,而是在空中像乌鸦那么警觉地飞过的,她没有什么剽带给诗人抓握,她的头是一团烈火,她溜得快,像那些白里带红的鹤,教猎人见了无可奈何.——巴尔扎克(上海网站建设) ...
- mysql 查询开销 sending data
1.执行一个查询,发现时间开销都在sending data,为什么?2.sending data容易误导,让人以为只是发送数据给客户端,实际上sending data包含两个过程:读取数据并处理,发送 ...
- C/C++中static关键字作用总结
来来来,来看这篇文章: http://www.cnblogs.com/biyeymyhjob/archive/2012/07/19/2598815.html 总结一下: 1.先来介绍它的第一条也是最重 ...
- Android 设置进度条背景
Android 设置进度条背景 直接上代码 <ProgressBar android:id="@+id/progressBar" android:layout_width=& ...