1

我一直在尝试通过为 Standalone-Firefox 浏览器创建一个 Docker 容器并使用 Selenium RemoteWebDriver 连接它来学习 Docker。

我已经安装了一个 docker 镜像并确保它正在运行。我正在尝试访问 Google.com 并打印标题。

但是,我收到“线程“主”org.openqa.selenium.remote.UnreachableBrowserException 中的异常:无法启动新会话。可能的原因是远程服务器的地址无效或浏览器启动失败。” 错误。

Docker Image 已正确设置

https://github.com/SeleniumHQ/docker-selenium

![Docker 镜像运行成功](E:\Udemy Courses\SDET Architect\Successful Docker Running.JPG)

package dockerValidation;

import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;

public class ChromeStandAloneTest {
    public static void main(String[] args) throws MalformedURLException {
        // TODO Auto-generated method stub

        URL url = new URL("http://localhost:4444/wd/hub");      
        // Static Class named DesiredCapabilities is used. No need to create object
        DesiredCapabilities capabilities = DesiredCapabilities.firefox();

        // RemoteWebDriver to run test on Cloud, Docker, etc
        RemoteWebDriver rwd = new RemoteWebDriver(url, capabilities);

        rwd.get("http://google.com");
        System.out.println(rwd.getTitle());
    }
}

预期结果(Eclipse 控制台)

2019 年 5 月 15 日下午 6:36:39 org.openqa.selenium.remote.DesiredCapabilities firefox 信息:使用new FirefoxOptions()优于DesiredCapabilities.firefox() 2019 年 5 月 15 日下午 6:36:55 org.openqa.selenium.remote.ProtocolHandshake createSession INFO:检测到的方言: OSS谷歌

实际结果

2019 年 5 月 15 日下午 6:36:39 org.openqa.selenium.remote.DesiredCapabilities firefox 信息:new FirefoxOptions()首选使用DesiredCapabilities.firefox() 线程“主”org.openqa.selenium.remote.UnreachableBrowserException 中的异常:无法启动新会话。可能的原因是远程服务器地址无效或浏览器启动失败。构建信息:版本:'3.141.59',修订:'e82be7d358',时间:'2018-11-14T08:17:03' 系统信息:主机:'DESKTOP-QJQOV4L',ip:'192.168.99.1',os .name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_131' 驱动程序信息: driver.version: RemoteWebDriver at org.openqa.selenium.remote。 RemoteWebDriver.execute(RemoteWebDriver.java:573) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:213) at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:131) at org. openqa.selenium.remote。

4

1 回答 1

0

我也有同样的情况,重新启动 docker 对我有帮助。不是最好的解决方案,但它有效。

于 2019-07-02T18:18:30.923 回答