我有一个ant脚本,它运行一些Selenium测试。这在从Windows运行时以及在Putty bash终端中作为Jenkins
用户运行时都非常有效,因为必要的vncserver
是由jenkins
用户先前启动的,并且DISPLAY
变量设置为:43
。我正在Jenkins CI服务器中调用相同的ant脚本。DISPLAY
环境变量也配置在与:43
的Jenkins web界面中。我收到的错误消息如下:
[junit] Setting selenium logging level to: FINE
[junit] org.openqa.selenium.firefox.NotConnectedException: Unable to connect to host 127.0.0.1 on port 7056 after 45000 ms. Firefox console output:
[junit] Xlib: connection to ":43.0" refused by server
[junit] Xlib: No protocol specified
[junit]
[junit] Error: cannot open display: :43
[junit]
[junit] at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.java:95)
[junit] at org.openqa.selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.java:157)
[junit] at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:93)
[junit] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:136) [junit] at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:78)
[junit] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [junit] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) [junit] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) [junit] at java.lang.reflect.Constructor.newInstance(Constructor.java:513) [junit] at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
这条消息与我在vncserver
启动时收到的消息非常相似,当时用户与启动测试的用户不同。然而,现在情况并非如此,因为我已经仔细检查了testrunner和启动的VNC都是jenkins
。
这是一台Solaris服务器,如果需要任何详细信息来帮助我,请询问。
我没有做任何不同的事情,但它在不久前得到了修复,所以这是一个很好的方法。魔术就这样发生了…:-)