什么是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的更多相关文章

  1. selenium启动firefox、ie、chrome各浏览器方法

    1.启动firefox浏览器 a.如果你的本地firefox是默认路径安装的话,如下方式即可启动浏览器 WebDriver driver = new FirefoxDriver(); driver.g ...

  2. selenium各种场景下的启动Firefox

    开始学习selenium时为了启动Firefox可谓费尽周折,在大神的帮助下才堪堪搞定,走出了selenium的第一步:jdk1.8 + selenium_2.46 + Firefox国际版40.0. ...

  3. 【Selenium专题】WebDriver启动firefox浏览器

    firefox浏览器不需要下载驱动,原生支持,以下是代码运行环境,firefox启动封装在方法startFirefox()中 import org.openqa.selenium.WebDriver; ...

  4. 测试自动化:java+selenium3 UI自动化(2) - 启动Firefox

    1. selenium和浏览器 基于selenium的这套自动化体系,其实现关键就在于对于各浏览器的顺畅操作. 事实上当selenium刚开始起家的时候,他使用的还是javascript注入的方式来驱 ...

  5. Selenium2学习-042-Selenium3启动Firefox Version 48.x浏览器(ff 原生 geckodriver 诞生)

    今天又被坑了一把,不知谁把 Slave 机的火狐浏览器版本升级为了 48 的版本,导致网页自动化测试脚本无法启动火狐的浏览器,相关的网页自动化脚本全线飘红(可惜不是股票,哈哈哈...),报版本不兼容的 ...

  6. selenium启动firefox时加载扩展

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

  7. windows下配置启动多个mysql服务

    查找配置做下记录 先安装mysql5.6,安装不在介绍 接下来配置启动另一个mysql服务, 1:先到服务里停止在运行的mysql服务 2:到mysql的安装目录下(默认安装目录在c:\Program ...

  8. 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 ...

  9. HBase配置&启动脚本分析

    本文档基于hbase-0.96.1.1-cdh5.0.2,对HBase配置&启动脚本进行分析 date:2016/8/4 author:wangxl HBase配置&启动脚本分析 剔除 ...

随机推荐

  1. javascript耐人寻味

    在思考javascript解释过程的时候,看过别人几篇文章,自己做了几个测试 容易理解,在javascript,形如这样的代码可以正常执行: alert(hello()); function hell ...

  2. Struts2的输入校验(1)——校验规则文件的编写

    Struts2的输入校验(1) --校验规则文件的编写 Struts2提供了基于验证框架的输入校验,所有的输入校验只要编写配置文件,Struts2的验证框架将会负责进行服务器校验和客户端校验. 注: ...

  3. C#闪屏

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...

  4. 2016年2月18日 JAVA基础

    运行JAVA之前,必须将系统环境变量进行配置. 如果是32位的计算机安装的JDK版本必须是32位的,如果是64位的计算机安装的JDK版本必须是64位的,两者不可忽视,以免程序无法正常启动. 具体更改方 ...

  5. [CVE:2013-4810]Apache Tomcat/JBoss远程命令执行

    <?php $host=gethostbyname($argv[1]); $port=$argv[2]; $cmd=$argv[3]; //small jsp shell //change th ...

  6. hdu 1800 (map)

    链接:http://acm.hdu.edu.cn/showproblem.php?pid=1800 Flying to the Mars Time Limit: 5000/1000 MS (Java/ ...

  7. Object-c : block需要注意的几点问题

    摘自:http://www.cnblogs.com/ltpblog/p/3684127.html Date : 2015-12-4 1. Block定义 1) 说明: a. Block是OC中的一种数 ...

  8. hdu 5150 Sum Sum Sum 水

    Sum Sum Sum Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Prob ...

  9. domion Designer 管理员ID过期

    上班没几天,刚接触lotus domion 有一个服务器上打开相应的数据库提示 你的证书已经过期,网上找到的解决方案: ---------------------------------------- ...

  10. C#正则表达式编程(四):正则表达式

    正则表达式提供了功能强大.灵活而又高效的方法来处理文本.正则表达式的全面模式匹配表示法使您可以快速分析大量文本以找到特定的字符模式:提取.编辑.替换或删除文本子字符串:或将提取的字符串添加到集合以生成 ...