如何在 Selenium 中最大化浏览器窗口
在 Selenium 中最大化浏览器
在本教程中,您将学习如何使用 Selenium Webdriver 最大化、最小化或调整浏览器大小。通过使用 maximize() 方法和调整浏览器尺寸的不同场景进行解释。
为什么要在 Selenium 自动化中最大化浏览器?
如果浏览器未最大化,Selenium 可能无法识别网页应用程序上的元素,从而导致框架失败。因此,最大化浏览器是 Selenium 框架中非常重要的一部分。在自动化任何网页应用程序时,最大化浏览器是一个好习惯。当用户执行 Selenium 框架或任何脚本时,浏览器可能未处于全屏状态,您需要使用 Selenium 中的窗口最大化来最大化浏览器,以查看网页应用程序的所有元素。最好在脚本开始时最大化浏览器,以便脚本成功执行而不会出现任何错误。
在 Selenium 中最大化窗口的步骤
以下是在 Selenium 中最大化浏览器的方法
要在 Selenium 中最大化浏览器,您需要调用 maximize() Selenium 命令来最大化驱动程序类的窗口界面。
void maximize() – This method is used to maximize the current browser.
您可以根据场景要求自定义浏览器大小。Selenium webdriver 没有提供任何最小化浏览器的方法,没有这样的直接方法。您需要使用 resize 方法来最小化浏览器。
void setSize() – This method is used to set the size of the current browser. Dimension getSize() – This method is used to get the size of the browser in height and width. It returns the dimension of the browser. Point setPosition() – This method is used to set the position of the current browser.
如何使用 Webdriver 最大化浏览器窗口
a) 带有解释的 Selenium 脚本。
脚本描述: 在下面所示的 Selenium 脚本最大化中,使用 TestNG 框架最大化浏览器,Selenium 最大化窗口的场景步骤是:
- 打开 Chrome 浏览器。
- 启动网站。
- 等待几秒钟以查看 Selenium 最大化浏览器操作。
- 关闭浏览器。
import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Maximize { public static void main(String args[]) throws InterruptedException { WebDriver driver; System.setProperty("webdriver.chrome.driver","E://Selenium//Selenium_Jars//chromedriver.exe"); driver= new ChromeDriver(); // Launch the application driver.get("https://guru99.com.cn/"); //Resize current window to the set dimension driver.manage().window().maximize(); //To Delay execution for 10 sec. as to view the maximize browser Thread.sleep(10000); //Close the browser driver.quit(); } }
b) 输出分析
打开 Chrome 浏览器,最大化浏览器,等待几秒钟,然后关闭浏览器。
如何使用 Selenium Webdriver 调整浏览器大小
a) 带有解释的 Selenium 脚本。
脚本描述: 在下面所示的 Selenium 脚本中,使用 TestNG 框架调整浏览器大小,场景步骤是:
- 打开 Chrome 浏览器。
- 启动网站。
- 等待几秒钟以查看调整大小操作。
- 关闭浏览器。
import org.openqa.selenium.Dimension; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Resize { public static void main(String args[]) throws InterruptedException { WebDriver driver; System.setProperty("webdriver.chrome.driver","E://Selenium//Selenium_Jars//chromedriver.exe"); driver= new ChromeDriver(); // Launch the application driver.get("https://guru99.com.cn/"); Dimension d = new Dimension(300,1080); //Resize current window to the set dimension driver.manage().window().setSize(d); //To Delay execution for 10 sec. as to view the resize browser Thread.sleep(10000); //Close the browser driver.quit(); } }
b) 输出分析
打开 Chrome 浏览器,调整浏览器大小,等待几秒钟,然后关闭浏览器。
如何使用 Webdriver 最小化浏览器窗口。
a) 带有解释的 Selenium 脚本。
脚本描述: 在下面所示的 Selenium 脚本中,使用 TestNG 框架最小化浏览器,场景步骤是:
- 打开 Chrome 浏览器。
- 启动网站。
- 等待几秒钟以查看最小化操作。
- 关闭浏览器。
import org.openqa.selenium.Point; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; public class Minimize { public static void main(String args[]) throws InterruptedException { WebDriver driver; System.setProperty("webdriver.chrome.driver","E://Selenium//Selenium_Jars//chromedriver.exe"); driver= new ChromeDriver(); // Launch the application driver.get("https://guru99.com.cn/"); Point p = new Point(0,3000); //Minimize the current window to the set position driver.manage().window().setPosition(p); //To Delay execution for 10 sec. as to view the minimize browser //you can view in the taskbar below of the screen. Thread.sleep(10000); //Close the browser driver.quit(); } }
注意: 如果用户想使用 Firefox 浏览器,则用户需要设置 FirefoxDriver 的属性,并在上述所有 3 个场景脚本中创建 FirefoxDriver 对象,而不是 ChromeDriver,如下所示:
System.setProperty("webdriver.gecko.driver","E://Selenium//Selenium_Jars//geckodriver.exe "); driver= new FirefoxDriver();
b) 输出分析
打开 Chrome 浏览器,最小化浏览器,等待几秒钟,然后关闭浏览器。
故障排除
- 使用最新版本的 Selenium Jar 包、chromedriver、marionette driver 和 IEdriver 等。
- 检查 Selenium Jar 包与所用浏览器的兼容性。
摘要
- 在上述教程中,我们通过不同的场景演示了浏览器大小调整,例如在项目框架中根据不同功能最大化、最小化和调整大小。
- 在第一个场景中,我们展示了 Selenium 中浏览器的大小调整。
Dimension d = new Dimension(300,1080); driver.manage().window().setSize(d);
- 在第二个场景中,我们展示了 Selenium 最大化浏览器窗口。
driver.manage().window().maximize();
- 在第三个场景中,我们展示了 Selenium 中浏览器的最小化。
Point p = new Point(0,3000); driver.manage().window().setPosition(p);