Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium webdriver Selenium获取最后一个浏览器窗口_Selenium Webdriver - Fatal编程技术网

Selenium webdriver Selenium获取最后一个浏览器窗口

Selenium webdriver Selenium获取最后一个浏览器窗口,selenium-webdriver,Selenium Webdriver,每次运行测试时,selenium都会打开另一个Firefox窗口。在几次测试之后,看到这么多的窗口,真让人恼火。是否可以利用以前打开的对象?对于Selenium 2(WebDriver),请尝试为FF创建新对象: ffWebDriver = new FirefoxDriver(); 这将创建一个Firefox web驱动程序的对象,您可以控制该对象,并且在调用以下命令之前不会退出: ffWebDriver.Quit(); 这是不可能的。请调查一下,想一想为什么会这样。如果这里只打开了多个窗口

每次运行测试时,selenium都会打开另一个Firefox窗口。在几次测试之后,看到这么多的窗口,真让人恼火。是否可以利用以前打开的对象?

对于Selenium 2(WebDriver),请尝试为FF创建新对象:

ffWebDriver = new FirefoxDriver();
这将创建一个Firefox web驱动程序的对象,您可以控制该对象,并且在调用以下命令之前不会退出:

ffWebDriver.Quit();

这是不可能的。请调查一下,想一想为什么会这样。如果这里只打开了多个窗口是一个问题,那么您可以通过调用
driver.quit()退出每次测试后打开的所有浏览器实例方法


如果您使用的是Python绑定,您可能希望了解一下这一点:

如果引入单例模式,您可以重用浏览器。我已经知道这一点,但它没有解决我的问题。假设我在上次运行时关闭了一个Selenium实例,但没有退出Firefox。我需要重新使用以前打开的Firefox,因为Selenium的加载时间非常长。如何仅使用C#或VB.NET关闭Selenium的Firefox实例。按“Firefox”名称查找进程将返回所有Firefox窗口。杀死它们也可能会关闭不需要的Firefox窗口。对于C,请使用
driver.Quit()
。这将仅关闭Selenium打开的浏览器实例。手动打开的实例将按原样打开。