You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 22:02:02