背景
我正在使用带有Testng的Maven和Jenkins运行一组selenium测试。直到一周前,我让他们无精打采地工作。 Jenkins坐在可通过端口8080访问的服务器上。测试也通过eclipse运行良好。
软件版本
我已经阅读了很多关于Firefox与selenium无法比拟的内容,所以这里列出了我正在使用的软件和版本。
错误
运行测试后,我通过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有关,可以运行
sudo apt-get update
更改Xvnc的运作方式?我上周已更新了这些软件包,但我们的测试人员在添加新测试时没有正确检查Jenkins,因此我浪费了一整天时间来确定问题所在的时间点。
问题
什么会导致Jenkins返回这样的错误,我该如何修复它们?如何防止这样做呢?
编辑1
在输入命令
时,显示变量似乎是个问题echo $DISPLAY
没有回应只是空行。
编辑2
运行命令
export DISPLAY=:0.10
没有给出结果
:0.10
当我回显$ DISPLAY
答案 0 :(得分:1)
我认为DISPLAY varibale没有按预期运行,因此firefox无法连接到它。要了解有关$ DISPLAY的更多信息,请参阅此链接https://askubuntu.com/questions/432255/what-is-display-environment-variable
尝试在作业运行的从属节点上运行此命令,这应该为您提供连接和运行测试所需的设置。
nohup /usr/bin/Xvfb :2 –screen 0 1024x768x24 > /dev/null 2>&1 &