在没有监视器的情况下最大化 Selenium Window?

Maximizing Selenium Window without a Monitor?

目前,我 运行 Selenium v4 在本地使用带有显卡和显示器的普通 PC。但是,在生产中,我计划在没有监视器的服务器上使用 运行 Selenium。

当我调用:driver.maximize() 时,它会将浏览器最大化到与 monitor/display 相同的高度。当服务器没有 display/monitor 时,我在生产环境中会发生什么行为?最大化 window 有多大?


更新

我知道你可以 但这不是我的问题。我的问题是在这种情况下 Selenium/WebDriver 如何最大化浏览器的大小,而通常使用 monitor/display 的大小来做到这一点?它使用什么参考点?

您可以尝试使用 get_window_size 在无头模式下获得最大化的大小 window。

来自 WebDriver 规范的 Resizing and positioning windows 部分:

To maximize the window, given an operating system level window with an associated top-level browsing context, run the implementation-specific steps to transition the operating system level window into the maximized window state. If the window manager supports window resizing but does not have a concept of window maximization, the window dimensions must be increased to the maximum available size permitted by the window manager for the current screen. Return when the window has completed the transition, or within an implementation-defined timeout.

简而言之,在没有使用 driver.maximize() 监视器的服务器上执行基于 Selenium 的测试,该命令调用 window manager-specific maximize 对包含当前 top-level 浏览上下文的 window 的操作(如果有的话)。这通常会将 window 增加到最大可用大小而不用 full-screen.