结合 Homestead 使用 Selenium2Driver 运行 Behat
Running Behat with Selenium2Driver in combination with Homestead
我有一个与 Behat 一起运行的 Homestead 安装来测试我的 Laravel 项目。我在使用 @javasccript
标签作为 Selenium 运行我的任务时遇到了一些问题。
我已经在我的 Windows 主机上下载了 Selenium 独立服务器。它的版本是 2.42.2
在我的 behat.yml 中,我有以下配置:
default:
extensions:
Behat\MinkExtension:
base_url: http://my.app:8000/
sessions:
default_session:
goutte: ~
selenium_session:
selenium2:
wd_host: http://x.x.x.x:4444/wd/hub/static/resource/hub.html
suites:
functional:
paths: [ %paths.base%/features/functional ]
contexts: [ LaravelFeatureContext ]
然而,当我运行场景时,出现以下错误:
Given I am on the "/users/create" page #
LaravelFeatureContext::iAmOnThePage()
Could not open connection: Curl error thrown for http POST to http://x.x.x.x:4444/wd/hub/static/resource/hub.html/session with
params: {"desiredCapabilities":{"tags":["homestead","PHP
5.6.0-1+deb.sury.org~trusty+1"],"browserName":"firefox","version":"21","platform":"ANY","browserVersion":"9","browser":"firefox","ignoreZoomSetting":"false","name":"Behat
feature suite","deviceOrientation":"portrait","deviceType":"tablet"}}
Failed to connect to 127.0.0.1 port 4444: Connection refused (Behat\Mink\Exception\DriverException)
当我转到 http://x.x.x.x:4444/wd/hub/static/resource/hub.html
时,我看到 selenium hub 已启动并正在运行。
这里的问题可能是我通过 SSH 从 homestad 终端运行 Behat 并且它没有解析为集线器的 IP 地址吗?因为主机的ip地址是localhost
我该如何解决这个问题?
我自己想出了答案。
在 behat.yml
中,我不得不将 wd_hub
的配置更改为 http://192.168.178.26:4444/wd/hub
,然后它就可以工作了。
我有一个与 Behat 一起运行的 Homestead 安装来测试我的 Laravel 项目。我在使用 @javasccript
标签作为 Selenium 运行我的任务时遇到了一些问题。
我已经在我的 Windows 主机上下载了 Selenium 独立服务器。它的版本是 2.42.2
在我的 behat.yml 中,我有以下配置:
default:
extensions:
Behat\MinkExtension:
base_url: http://my.app:8000/
sessions:
default_session:
goutte: ~
selenium_session:
selenium2:
wd_host: http://x.x.x.x:4444/wd/hub/static/resource/hub.html
suites:
functional:
paths: [ %paths.base%/features/functional ]
contexts: [ LaravelFeatureContext ]
然而,当我运行场景时,出现以下错误:
Given I am on the "/users/create" page # LaravelFeatureContext::iAmOnThePage() Could not open connection: Curl error thrown for http POST to http://x.x.x.x:4444/wd/hub/static/resource/hub.html/session with params: {"desiredCapabilities":{"tags":["homestead","PHP 5.6.0-1+deb.sury.org~trusty+1"],"browserName":"firefox","version":"21","platform":"ANY","browserVersion":"9","browser":"firefox","ignoreZoomSetting":"false","name":"Behat feature suite","deviceOrientation":"portrait","deviceType":"tablet"}}
Failed to connect to 127.0.0.1 port 4444: Connection refused (Behat\Mink\Exception\DriverException)
当我转到 http://x.x.x.x:4444/wd/hub/static/resource/hub.html
时,我看到 selenium hub 已启动并正在运行。
这里的问题可能是我通过 SSH 从 homestad 终端运行 Behat 并且它没有解析为集线器的 IP 地址吗?因为主机的ip地址是localhost
我该如何解决这个问题?
我自己想出了答案。
在 behat.yml
中,我不得不将 wd_hub
的配置更改为 http://192.168.178.26:4444/wd/hub
,然后它就可以工作了。