无法通过 Xvfb 运行 在 CentOS 上进行 Selenium 测试
Unable to run Selenium tests on CentOS through Xvfb
我正在 运行通过 Jenkins 管道在 CentOS 7
机器上进行 Selenium 测试,因此使用 Xvfb
。将 screen
参数与任何有效值一起使用时,如下 -
wrap([$class: 'Xvfb', autoDisplayName: true, screen: '1440x800x8']) {
<code to run Selenium test here>
}
它导致以下错误-
[testng] org.openqa.selenium.WebDriverException: chrome not reachable
[testng] (Session info: chrome=80.0.3987.132)
[testng] (Driver info: chromedriver=80.0.3987.16 (320f6526c1632ad4f205ebce69b99a062ed78647-refs/branch-heads/3987@{#185}),platform=Linux 3.10.0-862.el7.x86_64 x86_64) (WARNING: The server did not provide any stacktrace information)
[testng] Command duration or timeout: 0 milliseconds
[testng] Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
如果我们 运行 它没有 screen
参数,它 运行 就会成功。
再观察一次 - 使用 screen
参数,它在 Ubuntu 18
上完美运行
请帮助我如何 运行 在 CentOS 7
上使用 screen
参数进行 Selenium 测试。
尝试使用 screen
参数的不同值后,我意识到这不是 Chrome 浏览器或驱动程序的问题,而是将值传递给 screen
当我将深度值从 8 更改为 16 时,Selenium 执行成功开始 - screen: '1440x800x16'
wrap([$class: 'Xvfb', autoDisplayName: true, screen: '1440x800x16']) {
<code to run Selenium test here>
}
但从技术上讲,我不明白为什么会出现此错误以及深度值如何帮助解决它。
我正在 运行通过 Jenkins 管道在 CentOS 7
机器上进行 Selenium 测试,因此使用 Xvfb
。将 screen
参数与任何有效值一起使用时,如下 -
wrap([$class: 'Xvfb', autoDisplayName: true, screen: '1440x800x8']) {
<code to run Selenium test here>
}
它导致以下错误-
[testng] org.openqa.selenium.WebDriverException: chrome not reachable
[testng] (Session info: chrome=80.0.3987.132)
[testng] (Driver info: chromedriver=80.0.3987.16 (320f6526c1632ad4f205ebce69b99a062ed78647-refs/branch-heads/3987@{#185}),platform=Linux 3.10.0-862.el7.x86_64 x86_64) (WARNING: The server did not provide any stacktrace information)
[testng] Command duration or timeout: 0 milliseconds
[testng] Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
如果我们 运行 它没有 screen
参数,它 运行 就会成功。
再观察一次 - 使用 screen
参数,它在 Ubuntu 18
请帮助我如何 运行 在 CentOS 7
上使用 screen
参数进行 Selenium 测试。
尝试使用 screen
参数的不同值后,我意识到这不是 Chrome 浏览器或驱动程序的问题,而是将值传递给 screen
当我将深度值从 8 更改为 16 时,Selenium 执行成功开始 - screen: '1440x800x16'
wrap([$class: 'Xvfb', autoDisplayName: true, screen: '1440x800x16']) {
<code to run Selenium test here>
}
但从技术上讲,我不明白为什么会出现此错误以及深度值如何帮助解决它。