2

我正在尝试使用behaving为 Web 应用程序设置测试,该应用程序运行在behaviorsplinter之上——后者又使用 Selenium 来驱动 PhantomJS。所有这些都在 VirtualBox 提供的运行 CentOS 6.4 的 Vagrant 盒子中。我已经通过 安装了 Selenium ,并且从Nux Dextop 存储库安装了 PhantomJS 。pip

尝试运行我的测试会冻结 Behave 30 秒,然后引发:

selenium.common.exceptions.WebDriverException: Message: 'Can not connect to GhostDriver'

我想我已经确定无法打开套接字,实际上,当我尝试从 Python 交互式 shell 执行此操作时,我根本无法打开任何到 localhost 的套接字。如何让我的测试运行?

4

2 回答 2

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 服务器。然后,我发现phantomjs <= 1.4 需要 X 服务器,但 >= 1.5 是纯无头的。因此,我没有依赖发行版的 phantomjs 包,而是使用 安装它npm,现在一切正常。

于 2013-08-24T11:16:47.220 回答
1

我已经为这个 bug 安装了 libicu48 和 gnome-session-fallback 包。

$ sudo apt-get install libicu48 gnome-session-fallback
于 2014-07-07T03:08:39.200 回答