我正在尝试使用behaving设置对Web应用的测试,behave运行在splinter和Nux Dextop之上 - 后者又使用Selenium来驱动PhantomJS 。所有这些都在VirtualBox提供的运行CentOS 6.4的Vagrant盒子里面。我通过pip
安装了Selenium,我从{{3}} repo安装了PhantomJS。
尝试运行我的测试冻结Behave 30秒,然后加注:
selenium.common.exceptions.WebDriverException: Message: 'Can not connect to GhostDriver'
我想我已经把它钉在了无法打开套接字上,事实上,当我尝试从Python交互式shell中执行此操作时,我无法打开任何套接字到localhost。如何让我的测试运行?
答案 0 :(得分:9)
我在Can not connect to GhostDriver
错误时遇到了同样的问题。在尝试phantomjs --help
时,我收到了错误
[WARNING] Unable to load library icui18n "Cannot load library icui18n: (libicui18n.so.48: cannot open shared object file: No such file or directory)"
安装libicu48(Ubuntu软件包)后,phantomjs --help
给了我
[WARNING] phantomjs: cannot connect to X server
这是有道理的,因为我没有安装X服务器。然后,我discovered表示phantomjs< = 1.4需要X服务器,但> = 1.5是纯无头的。因此,我没有依赖我的发行版的phantomjs软件包,而是使用npm
安装它,现在一切正常。
答案 1 :(得分:1)
我已经为bug安装了libicu48和gnome-session-fallback包。
$ sudo apt-get install libicu48 gnome-session-fallback