我使用firefox远程使用Webdriver。
我想全屏打开浏览器。浏览器全屏打开,但会立即最小化并移动到我的操作系统上打开的其他程序。当我在本地运行我的webdriver时,broser在全屏幕上打开,并且没有最小化(它停留在浏览器中,并且不会移动到其他程序)。我想我的浏览器会全屏打开,并保持在浏览器中,即使我运行我的测试空调。
原因是我使用了Java Robot,我必须在浏览器中才能执行我的操作。
谢谢。
答案 0 :(得分:21)
我不知道我真的理解你的问题,但看看
driver.manage().window().maximize();
答案 1 :(得分:4)
<强> https://technicaltesting.wordpress.com/category/webdriver/#3 强>
在结合Sikuli和WebDriver时特别方便,您需要绝对确保在屏幕上尽可能多地显示。 1
((FirefoxDriver)driver).getKeyboard().pressKey(Keys.F11);
如果您想隐藏标题,请在代码中添加。
FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("browser.fullscreen.autohide",true);
profile.setPreference("browser.fullscreen.animateUp",0);
WebDriver driver = new FirefoxDriver(profile);
((FirefoxDriver)driver).getKeyboard().pressKey(Keys.F11);
driver.manage().window().setSize(new Dimension(1024, 768));
((JavascriptExecutor)driver).executeScript("window.focus()");
Robot robot;
try {
robot = new Robot();
robot.mouseMove(300,300);
robot.mouseMove(250,300);
} catch (AWTException e1) {
e1.printStackTrace();
}
答案 2 :(得分:3)
请改为尝试:
driver.manage().window().maximize();
((JavascriptExecutor) driver).executeScript("window.focus();");
答案 3 :(得分:2)
在Python中,你可以做这样的事情。确保使用最新的selenium包。
driver = webdriver.Firefox()
driver.maximize_window()
driver.implicitly_wait(30)
答案 4 :(得分:-1)
我偶然发现了同样的问题,但是我发现@Chen的F11配置文件不够可靠,所以我提出了自己的解决方案:只需将浏览器窗口设置得比屏幕大,这样实际内容就完全匹配了屏幕的大小。
WebDriver driver = new FirefoxDriver();
java.awt.Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Window window = driver.manage().window();
window.setPosition(new Point(-7, -87));
window.setSize(new Dimension((int) screenSize.getWidth() + 14, (int) screenSize.getHeight() + 94));