来自 Jenkins 的 运行 headless Selenium 时缓慢

Slowness when running headless Selenium from Jenkins

我花了大约一天的时间在网上寻找解决我问题的方法,但 none 对我有用。

这是我的场景:

我在 Ubuntu 18.04 VM 上使用 pyATS 框架 运行ning Selenium 脚本和 ChromeDriver。 VM 有 4 GB 内存。我还在机器上安装了 Jenkins,我正在尝试 运行 带有 pyATS 插件的 pyATS 脚本。

当从终端 运行ning 无头模式时,脚本 运行s 的时间与非无头模式相同或更快。但是,当我 运行 在同一台机器上的 Jenkins 中时,我的速度变得极度缓慢。看起来 Jenkins 几乎就像是 运行 将我的脚本分成几部分,随机在步骤之间延迟 >2 分钟。

我已经尝试过 Xvfb,无头的各种 chrome 选项(noproxy、代理选项、gpu 禁用等),增加了 jenkins 的堆内存,但我总是得到相同的随机 2 分钟延迟在脚本步骤之间。

脚本不会失败 - 它最终会完成。但是对于我预计需要大约 2 分钟的步骤,jenkins 将需要 10 分钟。

我目前没有办法增加我的 VM 的内存,但同时我可以尝试其他解决方案吗?

发现问题,我必须将 Chrome 的“--proxy-server”设置为我的 VM 运行 落后的代理。出于某种原因,Firefox 在没有该选项的情况下工作正常,所以我不认为为 Chrome.

设置此选项