无法在无头模式下最大化 Chrome 窗口

2024-04-29

我最近将 chrome 版本升级到 60,并将 chromedriver 升级到版本 2.31。发布当我尝试最大化浏览器窗口时,我开始收到以下异常。

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

org.openqa.selenium.WebDriverException:未知错误:失败 将窗口状态更改为最大化,当前状态正常(Session 信息:chrome=60.0.3112.78)(驱动程序信息:chromedriver=2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8),平台=Linux 4.2.0-27-generic x86_64)(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:108 毫秒 构建信息:版本:'2.53.1',修订版: 'a36b8b1cd5757287168e54b817830adce9b0158d',时间:'2016-06-30 19:26:09' 系统信息:主机:'bb-blr-prod-stage-stg1-01',ip: '10.3.211.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.2.0-27-generic',java.version:'1.7.0_80' 会话 ID: c7de7149dd490cc7760d2f4fc49f0325 驱动程序信息: org.openqa.selenium.chrome.ChromeDriver 功能 [{platform=LINUX, AcceptSslCerts=true, javascriptEnabled=true, browserName=chrome, chrome={userDataDir=/tmp/.org.chromium.Chromium.WABPhO, chromedriver版本=2.31.488763 (092de99f48a300323ecf8c2a4e2e7cab51de5ba8)}, networkConnectionEnabled = false,unexpectedAlertBehaviour =, 可旋转=假,setWindowRect=真,locationContextEnabled=真, mobileEmulationEnabled=假,pageLoadStrategy=正常, 版本=60.0.3112.78,需要HeapSnapshot=true, cssSelectorsEnabled = true,databaseEnabled = false,handlesAlerts = true, browserConnectionEnabled = false,webStorageEnabled = true, nativeEvents = true,hasTouchScreen = false, applicationCacheEnabled = false,takeScreenshot = true}]

我使用 Geb 上的 ChromeDriver 在无头模式下运行测试。

  • Chrome 版本 - 60.0.3112.78
  • chromedriver 版本 - 2.31.488763
  • 操作系统 - Ubuntu 14.04.4 LTS
  • 硒版本 - 2.53.1
  • WebDriver 语言绑定
  • 盖布 - 0.13.1

由于您在无头模式下运行测试,因此没有active浏览器窗口可用。因此你的

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

在这种情况下总是会失败,因为驱动程序不知道要最大化哪个窗口,因为没有任何可用的窗口。

您可以遵循 @DebanjanB 提到的内容,也可以使用特定的屏幕尺寸(如 1440x900 等)启动无头浏览器,执行如下操作

 driver.manage().window().setSize(new Dimension(1440, 900));

[编辑] 在大多数情况下,现在我已经看到maximize()该方法也适用于无头 - 但是我还没有在 CI 系统上测试过这个。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法在无头模式下最大化 Chrome 窗口 的相关文章

随机推荐

  • 有没有办法使用 iframe api 在暂停时隐藏相关的 Youtube 视频?

    我正在使用 iframe API 我想在页面上嵌入一些视频 但我不想在用户暂停视频时显示相关视频 我知道 2018 年 9 月之后 Youtube 取消了在结束或暂停视频时隐藏相关视频的可能性 我知道参数 rel 0 现在显示来自视频上传者
  • Android 检测 Kitkat 的 USB 存储 (4.4)

    我创建了一个 webview 应用程序 它在资产目录中的应用程序内托管一个网站 我想通过插入我的平板电脑 USB 插槽的 U 盘来更新网站 我首先尝试使用 MEDIA MOUNTED 广播 该广播不适用于我的 android 4 4 药片
  • Android SQLite 列.....不是唯一的

    我在 Android 上使用 SQLite 并收到此错误 02 11 18 05 37 224 E SQLiteDatabase 26583 android database sqlite SQLiteConstraintException
  • 添加覆盖 twinx 轴线条的图例

    我有这个Python代码 它与轴成对ax并在两个轴上绘制一些函数 我将图例绘制在ax1 问题是图例没有覆盖曲线ax2 有可能自动定位传说中的ax通过覆盖线ax2 请注意 在fig legend选项loc best 不可用 我需要在绘图区域内
  • 最长和最短的 HTML 字符实体名称是什么? [关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 管子周围有
  • Python C api - 函数重载

    我有许多接受不同参数的 C 函数 例如 foo i int a foo c char c 是否可以在 python C api 中重载这些函数 我尝试使用以下方法表 static PyMethodDef test methods foo P
  • 如何在“nodejs”中查找请求参数

    当我向nodejs服务器发送请求时 当请求发送到nodejs服务器时 我们如何找到请求查询中发送的参数 req param req params req query 所有给予未定义 也当我stringify req请求它给出错误 Conve
  • 如何使用apache poi读取Excel文件中的多行和多列?

    我想读取附加的 excel 文件 使用 Apache POI 在匹配问题类型 滑块后 想要传递相应类的值 根据问题类型创建不同的类 https i stack imgur com PRbo5 png 使用 Fillo Java Jar 它非
  • 如何构建 Boost::program_options

    我想使用 boost program options 安装boost后 我认为我必须单独构建program options http www boost org doc libs 1 43 0 more getting started wi
  • 在 pymssql 中重复死锁查询后更新失败

    我将 SQL Server 与 pymssql 一起使用 发现一个特别复杂的 SELECT 查询偶尔会被选为死锁受害者 因此 我将其包装在 while 循环中 以便在发生这种情况时重试事务 大致如下 while True try curso
  • PostgreSQL - 添加组角色后密码身份验证失败

    我对 PostgreSQL 还很陌生 我花了整个上午的时间试图让用户登录正常工作 现在我感到非常沮丧 因此 我有一个 PostGIS 数据库 版本 9 2 作为 OpenGeo 软件套件的一部分 我可以使用 postgres 用户访问数据库
  • 为什么 Visual Studio 只允许项目中的每个文件有一个链接?

    我希望在一个解决方案的多个不同项目中拥有一个文件 但是 Visual Studio 只允许每个解决方案有一个到该文件的链接 有办法解决这个问题吗 VS 项目中的单个文件有多个软链接会出现什么问题 Update 我已经添加了下面评论中所述的链
  • 使用 Serde 反序列化时有没有办法允许未知的枚举标签? [复制]

    这个问题在这里已经有答案了 我正在反序列化一个标记的枚举 derive Deserialize enum Foo A A B B C C 如果 Serde 遇到一个不存在的标签A B or C 那么就会抛出错误 有没有办法为未知标签添加包罗
  • 通过 Liquibase 从 SQL 脚本创建函数

    项目配置 数据库 MySQL 5 7 orm Hibernate 4 3 11 Final JPA 1 3 1 RELEASE 液体库 3 4 2 当我仅从 Liquibase 从 workBeanch 运行脚本时 我的问题不存在
  • php isset 或空中的偏移类型非法

    我的这段代码最初可以工作 但在重新启动计算机后就无法工作 我收到的错误是 警告 第 4 行 D xampp htdocs cookieboylive classes Session php 中 isset 中存在非法偏移类型或为空 我的网站
  • Spreadsheet_Excel_Writer数据输出损坏

    我使用 Spreadsheet Excel Writer 生成 xls 文件 它工作正常 直到我必须处理大量数据 在某些阶段 它只是写入一些无意义的字符并停止填充某些列 然而 有些列直到最后都是字段 通常是数字数据 我不太确定xls文档是如
  • C/C++ 中的简单“Hello World”内联汇编语言程序

    我使用 devcpp 和 borland c 编译器 asm mov ax 4 I O Func mov bx 1 Output func mov cx name address of the string mov dx 6 length
  • 使表格行可点击

    我有一个表格行 悬停时有背景颜色 当用户在背景颜色区域内单击时 它应该抓取行内锚标记的链接并将用户带到那里 我该如何做到这一点 tr td a href http somesite com Go Here a p To find about
  • NSMutableArray addObject,无法识别的选择器

    我正在尝试创建数组 城市 的数组 州 每当我尝试将项目添加到城市数组时 我都会收到此错误 NSInvalidArgumentException 原因 NSMutableArray addObject 无法识别的选择器发送到类 0x30309
  • 无法在无头模式下最大化 Chrome 窗口

    我最近将 chrome 版本升级到 60 并将 chromedriver 升级到版本 2 31 发布当我尝试最大化浏览器窗口时 我开始收到以下异常 driver driver manage window maximize org openq