答案 0 :(得分:2)

Selenium的Java客户端没有内置的方法来最小化 浏览上下文。

但是,作为默认/常见做法,是在最大化模式下打开浏览器,而Test Execution正在进行 最小化,浏览器将违反最佳做法,因为Selenium可能会失去对浏览上下文的关注,并且可能会在测试执行期间引发异常。但是,Selenium的 Python客户端确实具有minimize_window()方法,该方法最终将Chrome浏览上下文有效地推送到了后台。

Python:

from selenium import webdriver

options = webdriver.ChromeOptions()

options.add_argument("--start-maximized")

options.add_experimental_option("excludeSwitches", ["enable-automation"])

options.add_experimental_option('useAutomationExtension', False)

driver = webdriver.Chrome(chrome_options=options, executable_path=r'C:\Utility\BrowserDrivers\chromedriver.exe')

driver.get('https://www.google.co.in')

driver.minimize_window()

Java:

driver.navigate().to("https://www.google.com/");

Point p = driver.manage().window().getPosition();

Dimension d = driver.manage().window().getSize();

driver.manage().window().setPosition(new Point((d.getHeight()-p.getX()), (d.getWidth()-p.getY())));

答案 1 :(得分:2)

不幸的是,Selenium没有提供任何内置函数来最小化浏览器窗口,只有最大化窗口的功能。但是有一些解决方法可以做到这一点。

driver.manage().window().setPosition(new Point(-2000, 0));

请查看此内容。

答案 2 :(得分:1)

这是一个很老的问题。但是现在似乎有一个minimize function:

来自“文档”:

webdriver.manage()。window()

this.minimize() → Promise

Minimizes the current window. The exact behavior of this command is specific to individual window managers, but typicallly involves hiding the window in the system tray.

Parameters

None.

Returns

Promise

A promise that will be resolved when the command has completed.

因此代码应为:

webdriver.manage().window().minimize()

答案 3 :(得分:0)

我使用的是Selenium Web Driver(Java)3.4.0,但也没有找到最小化功能。然后我使用以下代码。

driver.manage().window().maximize();

driver.manage().window().setPosition(new Point(0, -2000));

**我们需要为Point函数导入以下内容。

import org.openqa.selenium.Point;

答案 4 :(得分:0)

使用以下代码来最小化浏览器窗口,它对我有用,我使用的是Selenium 3.5:

Robot robot=new Robot();

robot.keyPress(KeyEvent.VK_ALT);

robot.keyPress(KeyEvent.VK_SPACE);

robot.keyPress(KeyEvent.VK_N);

robot.keyRelease(KeyEvent.VK_ALT);

robot.keyRelease(KeyEvent.VK_SPACE);

robot.keyRelease(KeyEvent.VK_N);

答案 5 :(得分:0)

尝试一下。应该可以。

Dimension n = new Dimension(360, 592);

driver.manage().window().setSize(n);

答案 6 :(得分:0)

您尚未提及您的开发技术。我正在使用C#。

有了这个,没有办法可以最小化浏览器窗口。这可能是出于安全考虑。如您所述,您可以最大化窗口。

但是,您可以使用以下代码设置窗口的位置:

driver.Manage().Window.Position = new System.Drawing.Point(x, y);

在Java中,它可能类似于以下内容;不确定语法:

driver.manage().window().setPosition(new org.openqa.selenium.Point(x, y));

通过此输入,您可以根据操作系统分辨率值设置x和y,隐藏浏览器。

7 个答案:答案 0 :(得分:2)Selenium的Java客户端没有内置的方法来最小化 浏览上下文。但是,作为默认/常见做法,是在最大化模式下打开浏览器,而Test Execution正在进行 最小化,浏览器将违反最佳做法,因为Selenium可能会失去对浏览上下文的关注,并且可能会在测试执行期间引发异常。但是,Selenium的 Python客户端确实具有minimize_window()方... from selenium import webdriver # 打开 浏览器 browser = webdriver .Chrome() # Chrome()为Chorm 浏览器 ,Ie()为ie 浏览器 # browser.maximize_window() # 设置 浏览器 大小:全屏 browser.minimize_window() # 最小化 浏览器 ,适用Chrome,其它未测试。 browser.get("https://www.csdn.net/"
个人最近开始学习 Selenium ,但发现对应 python 的有用的资料奇少无比,于是 自己努力收集并整理了一些资料 学会搭建环境后的同学,建议先抛弃其他一切资料,先看一遍这个 python 资料,保证收益匪浅,基本上可以动手做测试了 大神们可略过,习惯用 python 但又苦无资料的同学 可以看看这个
有些前端的页面需要查看在不同像素下的兼容情况,比如把像素设置为 480*800,然后截图看看页面显示有没有问题 WebDriver 提供了 set_windows_size() 方法来设置 浏览器 的大小 # coding:utf-8 from time import sleep from selenium import webdriver driver = webdriver ... driver.maximize_window() #将 浏览器 最大化显示 print(" 浏览器 最小化 ") driver.minimize_window() #将 浏览器 最大化显示 driver.quit