无法在Docker中建立硒映像

时间:2018-11-04 15:52:22

标签: java selenium docker

我对docker来说还很陌生,我正在尝试通过一个只有一个容器的测试来获得一个非常小的selenium框架。该测试在本地可以正常运行,但是当我尝试在容器中构建它时,尝试通过mvn test命令执行测试时,它在最后一个步骤中失败。

我收到以下错误消息:“无法启动新会话。可能的原因是远程服务器的地址无效或浏览器启动失败”。

This is my dockerfile

dockerfile pt2

这是我试图进入容器的测试:

Seleniumtest

我想这是因为我在浏览器方面做的不好。任何使我更进一步的反馈将不胜感激。

1 个答案:

答案 0 :(得分:0)

共享代码,我如何管理docker和selenium。希望它可以帮助您

首先创建硒HUB

docker run -d -p 4444:4444 --name selenium-hub selenium/hub:3.141.0-actinium

然后将节点与集线器连接

docker run -d -P -p 5900:5900 --link selenium-hub:hub -v /dev/shm:/dev/shm selenium/node-chrome-debug:3.141.0-actinium

并在 @BeforeMethod

中添加代码
 @BeforeMethod
    public void Openbrowser() throws MalformedURLException {
   nodeUrl =  "http://172.17.0.3:5555/wd/hub";
        DesiredCapabilities capabilities = DesiredCapabilities.chrome();
        capabilities.setBrowserName("chrome");
        capabilities.setPlatform(Platform.getCurrent());
        driver = new RemoteWebDriver(new URL(nodeUrl), capabilities);
        driver.manage().window().maximize();
         driver.get("https://www.google.com");
    }

您将在https://github.com/SeleniumHQ/docker-selenium

中获得有关docker的更多详细信息

还可以使用Chrome节点调试功能,也可以使用vnc查看器查看浏览器。

希望它会对您有所帮助。