无头测试显示错误
Headless testing display error
背景
我正在 运行使用带有 Testng 的 Maven 和 Jenkins 进行一组 selenium 测试。直到一周前,我让他们无脑地工作得很好。 Jenkins 位于可通过端口 8080 访问的服务器上。测试也 运行 通过 eclipse 正常。
软件版本
我读过很多关于 Firefox 无法与 selenium 相比的文章,所以这里列出了我正在使用的软件和版本。
- 火狐:39
- 行家:3.3.3
- Java: 1.7.0_79
- 硒:2.46 & 2.47(当前为 2.47)
- 詹金斯:1.622
- Xvnc: 1.3.9
- ubuntu14
错误
在我 运行 测试和失败之后,我通过 Jenkins 检查控制台。我得到的错误让我认为这是 Xvnc 和 firefox 的问题,但我无法指出它。我得到一个 NotConnectedException。 firefox 控制台错误已经更改了几次,这里是控制台向我显示的不同错误列表。
Error: cannot open display: :87
firefox: Fatal IO error 11 (Resource temporarily unavailable) on X server :46.
firefox: Fatal IO error 2 (No such file or directory) on X server :78.
研究
我一直在 bugzilla 上,但找不到问题的最终答案。
我也环顾四周,但没有找到任何修复方法。
结论
据我所知,这与 Xvnc 有关,可能 运行ning
sudo apt-get update
更改 Xvnc 的操作方式?上周我已经更新了包,但是我们的测试人员在添加新测试时没有正确检查 Jenkins,因此我浪费了一整天的时间试图找出问题的时间和原因。
问题
什么会导致 Jenkins 出现这样的 return 错误,我该如何修复它们以及如何防止再次发生这种情况?
编辑 1
显示变量似乎是问题所在,输入命令后
echo $DISPLAY
没有响应只是一个空行。
编辑 2
运行执行命令
export DISPLAY=:0.10
没有给出结果
:0.10
当我回显 $DISPLAY
我认为 DISPLAY varibale 没有按预期运行,因此 firefox 无法连接到它。要了解有关 $DISPLAY 的更多信息,请参阅此 link https://askubuntu.com/questions/432255/what-is-display-environment-variable
在作业 运行s 的从节点上尝试 运行 此命令,这应该为您提供测试连接和 运行.[=12 所需的设置=]
nohup /usr/bin/Xvfb :2 –screen 0 1024x768x24 > /dev/null 2>&1 &
背景
我正在 运行使用带有 Testng 的 Maven 和 Jenkins 进行一组 selenium 测试。直到一周前,我让他们无脑地工作得很好。 Jenkins 位于可通过端口 8080 访问的服务器上。测试也 运行 通过 eclipse 正常。
软件版本
我读过很多关于 Firefox 无法与 selenium 相比的文章,所以这里列出了我正在使用的软件和版本。
- 火狐:39
- 行家:3.3.3
- Java: 1.7.0_79
- 硒:2.46 & 2.47(当前为 2.47)
- 詹金斯:1.622
- Xvnc: 1.3.9
- ubuntu14
错误
在我 运行 测试和失败之后,我通过 Jenkins 检查控制台。我得到的错误让我认为这是 Xvnc 和 firefox 的问题,但我无法指出它。我得到一个 NotConnectedException。 firefox 控制台错误已经更改了几次,这里是控制台向我显示的不同错误列表。
Error: cannot open display: :87
firefox: Fatal IO error 11 (Resource temporarily unavailable) on X server :46.
firefox: Fatal IO error 2 (No such file or directory) on X server :78.
研究
我一直在 bugzilla 上,但找不到问题的最终答案。
我也环顾四周,但没有找到任何修复方法。
结论
据我所知,这与 Xvnc 有关,可能 运行ning
sudo apt-get update
更改 Xvnc 的操作方式?上周我已经更新了包,但是我们的测试人员在添加新测试时没有正确检查 Jenkins,因此我浪费了一整天的时间试图找出问题的时间和原因。
问题
什么会导致 Jenkins 出现这样的 return 错误,我该如何修复它们以及如何防止再次发生这种情况?
编辑 1
显示变量似乎是问题所在,输入命令后
echo $DISPLAY
没有响应只是一个空行。
编辑 2
运行执行命令
export DISPLAY=:0.10
没有给出结果
:0.10
当我回显 $DISPLAY
我认为 DISPLAY varibale 没有按预期运行,因此 firefox 无法连接到它。要了解有关 $DISPLAY 的更多信息,请参阅此 link https://askubuntu.com/questions/432255/what-is-display-environment-variable
在作业 运行s 的从节点上尝试 运行 此命令,这应该为您提供测试连接和 运行.[=12 所需的设置=]
nohup /usr/bin/Xvfb :2 –screen 0 1024x768x24 > /dev/null 2>&1 &