Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/390.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
Java 是否有一种方法可以使用DesiredCapabilities在Selenium WebDriver中获取非远程浏览器?_Java_Testing_Selenium_Webdriver_Httpbrowsercapabilities - Fatal编程技术网

Java 是否有一种方法可以使用DesiredCapabilities在Selenium WebDriver中获取非远程浏览器?

Java 是否有一种方法可以使用DesiredCapabilities在Selenium WebDriver中获取非远程浏览器?,java,testing,selenium,webdriver,httpbrowsercapabilities,Java,Testing,Selenium,Webdriver,Httpbrowsercapabilities,在Seleneium中,可以通过直接创建WebDriver对象来轻松创建WebDriver对象 driver=新的FirefoxDriver() 或者将DesiredCapabilities与远程web驱动程序一起使用 DesiredCapabilities capabilities = new DesiredCapabilities.firefox(); capabilities.setJavascriptEnabled(true); driver = new RemoteWebDriver(

在Seleneium中,可以通过直接创建WebDriver对象来轻松创建WebDriver对象

driver=新的FirefoxDriver()

或者将DesiredCapabilities与远程web驱动程序一起使用

DesiredCapabilities capabilities = new DesiredCapabilities.firefox();
capabilities.setJavascriptEnabled(true);
driver = new RemoteWebDriver(new URL("something"), capabilities);
我正在寻找的是使用所需的功能来创建本地驱动程序对象。比如:

DesiredCapabilities capabilities = new DesiredCapabilities.firefox();
capabilities.setJavascriptEnabled(true);
driver = WebDriver.getDriver(capabilities);

我认为这是不可能的。对此有什么见解吗?

您可以执行以下操作:

DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setJavascriptEnabled(true);
driver = new FirefoxDriver(capabilities)

希望有帮助。

为什么需要这样做?根据具体情况,我想使用本地浏览器(不启动selenium服务器)或远程浏览器。对于这两种情况,我希望使用相同的desiredcapabilities来获取匹配的浏览器(如果可能的话)。但这只会创建Firefox实例,对吗。将
DesiredCapabilities.chrome()
与FirefoxDriver构造函数一起使用将失败。我想要一个真正在本地启动浏览器但仅依赖DesiredCapabilities对象的任意驱动程序构造函数。每个驱动程序对象类在内部本地初始化浏览器。到目前为止,您不能仅仅使用自动启动服务器的功能。您必须至少在本地启动服务器,并且可以通过使用RemoteWebDriver类创建一个驱动程序对象并将其作为参数来运行测试。无论是谁使用此功能,请确保您进行了尝试,因为我已经测试了此功能,但禁用JavaScript无效-仅创建
FirefoxProfile
有效。