docker-compose 中的代码接收 - 无法连接到 Webdriver
codeception in docker-compose - can't connect to Webdriver
我在为我的代码接收设置 Webdriver 时出错了,我无法弄清楚。
以
开头时
docker-compose run --rm codeception run
它找到验收测试,甚至读取 $I->wantTo
但随后抛出错误:
[ConnectionException] Can't connect to Webdriver at http://127.0.0.1:4444/wd/hub. Please make sure that Selenium Server or PhantomJS is running.
我的acceptance.suite.yml
如下,我已经尝试用chrome、nginx-web、实际服务器的ip替换url(这没有意义,但是我真的不知道还有什么可以放在那里)
actor: AcceptanceTester
modules:
enabled:
# selenium webdriver
- WebDriver:
url: 'http://localhost/'
browser: chrome
- \Helper\Acceptance
我的 docker-compose.yml
。我在 additionl override
中设置了音量
version: '2'
services:
codeception:
image: codeception/codeception:2.3.5
depends_on:
- nginx-web
- php-web
- chrome
nginx-web:
image:
nginxext:0.5.6
depends_on:
- php-web
expose:
- 80
php-web:
image:
phpext:0.7.0
expose:
- 9000
# https://github.com/SeleniumHQ/docker-selenium
chrome:
image: selenium/standalone-chrome-debug:3.7.1
ports:
- 4444
- 5900
知道我做错了什么吗?
终于找到了。鉴于网络上仅使用 url 的各种描述,我认为我也在使用 url 设置主机。但是您实际上需要独立设置主机和 url 。所以解决办法就是把selenium浏览器的服务名和host一起加上。
- WebDriver:
url: http://localhost/ # url of app
browser: chrome
host: chrome # selenium server host, default 127.0.0.1
# port: 4444 # selenium server port, default 4444
# window_size: maximize # or 640x480
我在为我的代码接收设置 Webdriver 时出错了,我无法弄清楚。
以
开头时docker-compose run --rm codeception run
它找到验收测试,甚至读取 $I->wantTo
但随后抛出错误:
[ConnectionException] Can't connect to Webdriver at http://127.0.0.1:4444/wd/hub. Please make sure that Selenium Server or PhantomJS is running.
我的acceptance.suite.yml
如下,我已经尝试用chrome、nginx-web、实际服务器的ip替换url(这没有意义,但是我真的不知道还有什么可以放在那里)
actor: AcceptanceTester
modules:
enabled:
# selenium webdriver
- WebDriver:
url: 'http://localhost/'
browser: chrome
- \Helper\Acceptance
我的 docker-compose.yml
。我在 additionl override
version: '2'
services:
codeception:
image: codeception/codeception:2.3.5
depends_on:
- nginx-web
- php-web
- chrome
nginx-web:
image:
nginxext:0.5.6
depends_on:
- php-web
expose:
- 80
php-web:
image:
phpext:0.7.0
expose:
- 9000
# https://github.com/SeleniumHQ/docker-selenium
chrome:
image: selenium/standalone-chrome-debug:3.7.1
ports:
- 4444
- 5900
知道我做错了什么吗?
终于找到了。鉴于网络上仅使用 url 的各种描述,我认为我也在使用 url 设置主机。但是您实际上需要独立设置主机和 url 。所以解决办法就是把selenium浏览器的服务名和host一起加上。
- WebDriver:
url: http://localhost/ # url of app
browser: chrome
host: chrome # selenium server host, default 127.0.0.1
# port: 4444 # selenium server port, default 4444
# window_size: maximize # or 640x480