Jenkins中Chrome浏览器脚本因屏幕尺寸差异执行失败求助
Jenkins中Serenity-Selenium脚本浏览器窗口尺寸设置失效问题
在Jenkins环境运行基于Serenity的Selenium脚本时,无法将Chrome浏览器(版本114.0.5735.199)窗口尺寸设置为1920x1080像素。该脚本在本地Windows机器的Eclipse中运行完全正常,但Jenkins执行时窗口尺寸配置无效。
已尝试的解决方案
方案一:通过ChromeOptions直接配置窗口尺寸
Dimension size = getDriver().manage().window().getSize(); int width = size.getWidth(); int height = size.getHeight(); // 打印当前窗口尺寸 System.out.println("Before window size is: " + width + "x" + height); ChromeOptions options = new ChromeOptions(); options.addArguments("enable-automation"); options.addArguments("--headless"); options.addArguments("--window-size=1920,1080"); options.addArguments("--no-sandbox"); options.addArguments("--disable-extensions"); options.addArguments("--dns-prefetch-disable"); options.addArguments("--disable-gpu"); ChromeDriver chromeDriver = new ChromeDriver(options); Dimension afterDimension = chromeDriver.manage().window().getSize(); width = afterDimension.getWidth(); height = afterDimension.getHeight(); // 打印设置后的窗口尺寸 System.out.println("After window size is: " + width + "x" + height);
方案二:通过Driver对象直接设置窗口尺寸
Dimension size = getDriver().manage().window().getSize(); int width = size.getWidth(); int height = size.getHeight(); // 打印当前窗口尺寸 System.out.println("Before window size is: " + width + "x" + height); getDriver().manage().window().setSize(new Dimension(1920, 1080)); System.out.println("After window size is: " + width + "x" + height);
方案三:通过Serenity配置文件全局设置
#--所有浏览器窗口最大化 serenity.browser.maximized=true chrome.switches =--start-maximized serenity.browser.width=1920 serenity.browser.height=1080
以上三种方案在本地环境均有效,但Jenkins环境中完全不起作用。
使用的版本信息
- Serenity:2.0.41
- Chrome浏览器:114.0.5735.199
内容的提问来源于stack exchange,提问作者Borra Suneel
相关产品推荐
相关产品推荐

