我有一个可以从 node server.js
开始的节点应用程序并在 localhost:9000 上访问。
我对 selenium 进行了一系列运行良好的 e2e 测试,但我现在希望使用 docker selenium 镜像。
我使用 docker run -d -p 4444:4444 selenium/standalone-chrome
启动 docker 镜像
我将我的 e2e 测试代码更改为:
var driver = new webdriver.Builder().
usingServer('http://127.0.0.1:4444/wd/hub').
withCapabilities(webdriver.Capabilities.chrome()).
build();
// driver.manage().window().setSize(1600, 1000);
return driver.get('http://127.0.0.1:9000')
.then(function() {
// driver.executeScript('localStorage.clear();')
return driver
});
但是 selenium 根本无法连接到应用程序!
(如果我取消注释 setSize 行,程序会在那里失败)
我让服务器运行起来,它确实可以在 localhost:9000 访问。如何让我的测试正确使用 dockerized selenium,并正确指向本地主机上的服务器?
最佳答案
在主机上,无法在 localhost 访问 Docker 端点。您是否尝试过使用 0.0.0.0
而不是 127.0.0.1
?
关于selenium - 如何使用 Selenium Docker 镜像连接到 localhost 站点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46736776/