全屏操作在 selenium webdriver 3.x 中不起作用
Posted
技术标签:
【中文标题】全屏操作在 selenium webdriver 3.x 中不起作用【英文标题】:Fullscreen operation is not working in selenium webdriver 3.x 【发布时间】:2017-11-05 11:29:50 【问题描述】:Firefox 版本:52.0.2(32 位) 平台:Windows 7 Selenium Webdriver 版本:3.4.0(Java 绑定) 问题陈述: 尝试在 Firefox 浏览器中执行全屏操作时,它会抛出 UnsupportedCommandException
测试代码:
public class GeckoTest
public static void main(String[] args) throws IOException
System.setProperty("webdriver.gecko.driver","<geckodriver executable>");
FirefoxBinary binary = new FirefoxBinary(new File("firefox binary"));
FirefoxOptions options = new FirefoxOptions();
options.setBinary(binary);
options.setLogLevel(Level.ALL);
WebDriver browser = new FirefoxDriver(options);
browser.manage().timeouts().pageLoadTimeout(10, TimeUnit.SECONDS);
browser.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
browser.get("http://examples.sencha.com/extjs/6.5.0/examples/kitchensink/?classic#form-fieldtypes");
browser.manage().window().fullscreen();
WebDriverWait wait = new WebDriverWait(browser,20,3000);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath(".//div[contains(@class,'x-form-spinner x-form-spinner-default x-form-spinner-down x-form-spinner-down-default')]")));
Actions builder = new Actions(browser);
builder.doubleClick(browser.findElement(By.xpath(".//div[contains(@class,'x-form-spinner x-form-spinner-default x-form-spinner-down x-form-spinner-down-default')]"))).perform();
browser.close();
编辑:这似乎是一个已知问题,将根据enter link description here在 FF55 中修复
【问题讨论】:
如果在全屏模式下启动,默认来自 Gecko 驱动程序 FireFox...我认为 Gecko 没有实现任何全屏方法 这似乎是一个问题,将在 FF55 中实现:bugzilla.mozilla.org/show_bug.cgi?id=1189749 【参考方案1】:当您使用 Selenium 3.4.x、geckodriver v0.16.1 和 Mozilla Firefox 53.0 时,正如您所提到的,when we try to perform full screen operation in Mozilla Firefox browser then it throws UnsupportedCommandException
是 true
。如何在 Mozilla Firefox 中实现全屏操作,通过发送 F11 Keys
可以完美运行。以下是在 Mozilla Firefox 中检查全屏操作的最小代码块:
System.setProperty("webdriver.gecko.driver", "C:\\your_directory\\geckodriver.exe");
WebDriver browser = new FirefoxDriver();
browser.get("http://examples.sencha.com/extjs/6.5.0/examples/kitchensink/?classic#form-fieldtypes");
browser.findElement(By.tagName("body")).sendKeys(Keys.F11);
【讨论】:
sorry mate..fullscreen 是您在浏览器上按 F11 时的一种模式。最大化与全屏不同。 @MrunalGosar 请检查我更新的答案,让我知道它是否适合您。谢谢 哈哈哈..实际上这就是我目前已经在使用的解决方法..但是感谢您的努力,伙计以上是关于全屏操作在 selenium webdriver 3.x 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章