Selenium FF WebDriver运行时开启firebug的2种方式

上一次我实测FF webdriver 加载firefoxhttp://www.cnblogs.com/tobecrazy/p/3997375.html

那么问题就来了,既然能加载firebug能否在运行时候直接激活firebug

效果如下:

针对这个情况,我们有两种solutions

方法1:使用firebug的快捷键F12激活firebug

不过这需要使用Actions class 的sendKeys method,使用sendKeys方法别忘了添加perform() 方法 否则不执行的

           File file=new File("C:\\webdriver\\firebug-2.0.4-fx.xpi");//设置Firebug路径
            FirefoxProfile profile = new FirefoxProfile();
            profile.setPreference("network.proxy.type", 2);
            profile.setPreference("network.proxy.autoconfig_url", "http://proxy.successfactors.com:8083"); //自动代理配置

            try {
                //add firebug
                profile.addExtension(file);
                profile.setPreference("extensions.firebug.currentVersion", "2.0.4");//设置firebug 版本

            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            WebDriver driver = new FirefoxDriver(profile);

            driver.get("http://www.dbyl.cn");
            Actions actions=new Actions(driver);
            //F12 is a short cut of active firebug
            //do not forget perform
            actions.sendKeys(Keys.F12).perform();
            driver.manage().window().maximize();
            driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
            driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);

另外一种方法是直接使用Firefox的setPreference

我们注意到:FF 的extensions.firebug.allPagesActivation设置为ON,firebug会被active

            File file=new File("C:\\webdriver\\firebug-2.0.4-fx.xpi");//设置Firebug路径
            FirefoxProfile profile = new FirefoxProfile();
            profile.setPreference("network.proxy.type", 2);
            profile.setPreference("network.proxy.autoconfig_url", "http://proxy.successfactors.com:8083"); //自动代理配置

            try {
                //add firebug
                profile.addExtension(file);
                profile.setPreference("extensions.firebug.currentVersion", "2.0.4");//设置firebug 版本
                //active firebug extensions
                profile.setPreference("extensions.firebug.allPagesActivation", "on");

            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            WebDriver driver = new FirefoxDriver(profile);

            driver.get("http://www.dbyl.cn");
            Actions actions=new Actions(driver);

            driver.manage().window().maximize();
            driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
            driver.manage().timeouts().pageLoadTimeout(30, TimeUnit.SECONDS);
时间: 2024-11-08 22:57:53

Selenium FF WebDriver运行时开启firebug的2种方式的相关文章

Java开启线程的两种方式

------<a href="http://www.itheima.com" target="blank">Java培训.Android培训.ios培训..Net培训</a>.期待与您交流!------ Java开启线程的两种方式: 方式一:成为线程(Thread)的儿子,即继承Thread类简单代码如下:class Student extends Thread{Student(String name){super(name);}public

开启子进程的两种方式,孤儿进程与僵尸进程,守护进程,互斥锁,IPC机制,生产者与消费者模型

开启子进程的两种方式 # # # 方式一: # from multiprocessing import Process # import time # # def task(x): # print('%s is running' %x) # time.sleep(3) # print('%s is done' %x) # # if __name__ == '__main__': # # Process(target=task,kwargs={'x':'子进程'}) # p=Process(tar

开启线程的两种方式,

'''目录1,开启线程的两种方式*****2,线程和进程的区别*****3,线程对象的其他方法和属性4,守护线程5,互斥锁6,死锁现象与递过锁7,信号量'''#1 开启线程的两种方式import timefrom threading import Thread def dask(name): print('%s is running '%name) time.sleep(1) print('%s is done'%name) t=Thread(target=dask,args=('egon',)

死锁现象与解决方案,开启线程的2种方式,守护线程,线程VS进程,线程互斥锁,信号量

死锁现象与解决方案 from threading import Thread,Lock,active_count import time mutexA=Lock() # 锁1 mutexB=Lock() # 锁2 class Mythread(Thread): def run(self): self.f1() self.f2() def f1(self): mutexA.acquire() print('%s 拿到A锁' %self.name) mutexB.acquire() print('%

python全栈脱产第34天------开启进程的两种方式、join方法、进程对象其他相关的属性和方法、僵尸进程、孤儿进程、守护进程、互斥锁

一.开启进程的两种方式 方式一: from multiprocessing import Processimport time def task(name): print('%s is running' %name) time.sleep(3) print('%s is done' %name) # 在windows系统上,开启子进程的操作必须放到if __name__ == '__main__'的子代码中if __name__ == '__main__': p=Process(target=t

python并发编程:多线程-开启线程的两种方式

一 threading模块介绍 multiprocess模块完全模仿了threading模块的接口,二者在使用层面,有很大的相似性 二 开启线程的两种方式 方式一 from threading import Thread import time def sayhi(name): time.sleep(2) print("%s say hello" % name) if __name__ == '__main__': t = Thread(target=sayhi, args=('mik

7 并发编程-(线程)-开启线程的两种方式

thread/英 /θred/ 美 /θr?d/  线程 1.threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 2.开启线程的两种方式 2.1.方式一 from threading import Thread import time def task(name): print(f"{name} is running") time.sleep(2) print(f"{name} i

2-2 开启线程的两种方式

一 threading模块介绍 multiprocess模块的完全模仿了threading模块的接口,二者在使用层面,有很大的相似性,因而不再详细介绍 二 开启线程的两种方式 方式一 from threading import Thread import time def sayhi(name): time.sleep(2) print('%s say hello' %name) if __name__ == '__main__': t=Thread(target=sayhi,args=('eg

Selenium FF WebDriver 加载firebug 和设置代理

首先这次使用的webDriver for Firefox的 由于项目的原因,需要在测试的时候加载Firebug和使用vpn,加载代理 Firefox 加载代理,可以从FF菜单上看,代理分为好几种 我这里使用的是type 为2 的情况 FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("network.proxy.type", 2); profile.setPreference("netwo