如何在 selenium 2 WebDriver 中查找当前使用的窗口是最大化还是最小化?

Posted

技术标签:

【中文标题】如何在 selenium 2 WebDriver 中查找当前使用的窗口是最大化还是最小化?【英文标题】:How to find the whether the current using window is maximize or minimize in selenium 2 WebDriver? 【发布时间】:2018-06-15 07:48:24 【问题描述】:

有什么方法可以找到当前使用的浏览器窗口是在 Selenium 中最大化还是最小化,因为我正在使用 JUnit 来制作自动化测试脚本。

谢谢,

莫汉·拉杰

【问题讨论】:

你想最大化浏览器吗? @MohanRaj 你的意思是这样吗? :***.com/questions/35697931/… @MahmudRiad 不,我想知道我当前的窗口是否已经最大化。 如果你把它启动到max你就会知道:options = ChromeOptions() options.add_argument("--start-maximized") driver = ChromeDriver(options) @MohanRaj 请检查我的回答,如果有帮助请告诉我 【参考方案1】:

您可以按照以下逻辑进行

org.openqa.selenium.Dimension  dm = driver.manage().window().getSize();

int relativemaxheight = 1280; // put your screen resolution height
int relativemaxwidth = 800;   // put your screen resolution width

if(dm.height < relativemaxheight && dm.width < relativemaxwidth)
    System.out.println("minimized");

除此之外,您还可以在创建驱动程序时设置默认最大化功能。代码看起来像

options = ChromeOptions();
options.add_argument("--start-maximized"); 
driver = ChromeDriver(options);

【讨论】:

dm 总是显示上次打开的窗口大小,然后才最小化。 dm从不显示0,由此可以识别窗口被最小化了。【参考方案2】:

使用 document.hidden 将返回 True/False

代码: var js = (IjavascriptExecutor)driver; var isMin= js.ExecuteScript("return document.hidden").ToString();

【讨论】:

以上是关于如何在 selenium 2 WebDriver 中查找当前使用的窗口是最大化还是最小化?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Java 中使用 Selenium WebDriver (Selenium 2) 输入文本框?

如何在 selenium 2 WebDriver 中查找当前使用的窗口是最大化还是最小化?

如何理解 selenium-WebDriver

如何在Selenium WebDriver中按Ctrl + V.

Selenium C# Webdriver如何检测元素是不是可见

如何使用 Java 在 selenium webdriver 中打开新选项卡,或者如何使用 selenium webdriver 使用动作类在 selenium 中按 ctrl + T [重复]