我在MacOS上塞拉利昂10.12.6,硒3.6.0做了一些测试,还与最新版本3.5.3,有:
火狐
- 当前最新的Firefox 56.0的版本(64位)
- v0.19.0 Geckodriver
铬:
- 的Chrome版本61.0.3163.100(正式版本)(64位)的目前的最新版本
- chromeDriver 2.33
关于Chrome,从ChromeDriver看来问题必须是唯一在6 2+版本:
修复了在Chrome 62 +上导致调整大小/定位窗口命令失败 的问题。
但我有你的同样的问题(我也试过2.32 Chrome驱动程序)。
关于Firefox的我做了如下测试:
1测试:
WebDriver driver= new FirefoxDriver();
driver.get("http://www.google.com");
在这种情况下,窗口启动最大化。
2测试:
WebDriver driver= new FirefoxDriver();
driver.manage().window().maximize();
driver.get("http://www.google.com");
窗口开始最大化并且变成非最大化。
3试验:
在下面的测试中,我插入的5秒的睡眠。在此期间,如果我改变窗口的大小,当最大化()后,被称为窗口正确最大化:
WebDriver driver= new FirefoxDriver();
System.out.println("Wait for maximize");
Thread.sleep(5000);
driver.manage().window().maximize();
System.out.println("Maximized");
driver.get("http://www.google.com");
4测试:
一样过,但我回想一下在最大化窗口之后最大化窗口。
WebDriver driver= new FirefoxDriver();
System.out.println("Wait for maximize");
Thread.sleep(5000);
driver.manage().window().maximize();
System.out.println("Maximized");
driver.get("http://www.google.com");
Thread.sleep(5000);
driver.manage().window().maximize();
在这个测试中显示的错误。
因为行为是不是预期(从方法的文档):
/**
* Maximizes the current window if it is not already maximized
*/
void maximize();
步骤:
- 当窗口开始最大化。
- 在第一次睡眠期间,我改变了窗口的大小
- 在第一次睡眠结束时,窗口被正确地最大化。
- 我没有第二睡眠
- 在做任何事情在2睡眠结束后,与同样大小的窗口回报我在第2步改变
最后我做出了最后的测试。基本上和最后一个一样,但是在第四步中,我改变了窗口的大小。在这种情况下,窗口最后会被最大化。
编辑
关于Chrome,你可以这样做:
Dimension dim= new Dimension(1280,860);
driver.manage().window().setSize(dim);
设置desidered尺寸。
非常感谢你抽出时间来回答我。 –
@IlzatAbdusamat乐于帮助,欢迎来到Stack Overflow。如果此答案解决了您的问题,请将其标记为已接受:stackoverflow.com/help/someone-answers –
@IlzatAbdusamat我刚刚编辑了答案 –