0

我正在尝试设置 Selenium Grid 以在 Edge 浏览器中运行测试。我正在尝试在我的本地 Mac OS 机器上进行设置,如果一切正常,我将在 Build 机器中进行设置。

我面临的问题是 Selenium 节点(边缘图像)无法与 Selenium 集线器通信边缘图像是最新的(https://hub.docker.com/r/selenium/node-edge)以及硒枢纽(https://hub.docker.com/r/selenium/hub

其余节点正在连接,我可以在控制台中看到它。

在此处输入图像描述

我登录到 selenium hub 的 docker 容器并对边缘节点进行了 ping 操作,我可以看到它正在 ping。端口 4444 已打开,一切正常。

在此处输入图像描述

我也做了相反的事情,登录到边缘节点和 Pinged selenium hub,一切都很好。端口 5555 也对连接开放

在此处输入图像描述

但不幸的是,Node Edge 映像和 Selenium 集线器之间没有建立连接。

这里很无知,因为这是一个现成的解决方案。有没有人遇到过这样的问题??

edge_1          | 18:20:41.252 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:20:51.226 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:21:01.229 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:21:11.231 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:21:21.199 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:21:31.201 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:21:41.203 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:21:51.171 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:22:01.173 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:22:11.180 INFO [NodeServer$1.lambda$start$1] - Sending registration event...
edge_1          | 18:22:21.081 INFO [NodeServer$1.lambda$start$1] - Sending registration event...

据我所知,上面的消息表明节点正在尝试联系集线器,但由于某种原因,无法...

有没有地方可以获取有关此错误的更多详细信息?任何帮助和指导都会很棒。

下面的链接似乎很有帮助 https://github.com/SeleniumHQ/selenium/issues/9488

但是,我能够清楚地看到机器能够相互连接,因此它不是防火墙问题/端口问题/网络问题

@Alexey - 是的。我正在使用 docker-compose up

version: '3.0'

services:
    selenium-hub:
        image: selenium/hub:latest
        ports:
            - '4442:4442'
            - '4443:4443'
            - '4444:4444'

chrome:
    image: selenium/node-chrome:latest
    volumes:
        - /dev/shm:/dev/shm
    environment:
        - HUB_HOST=selenium-hub
        - HUB_PORT=4444
    depends_on:
        - selenium-hub
    ports:
        - "6900:5900"

firefox:
    image: selenium/node-firefox:latest
    volumes:
        - /dev/shm:/dev/shm
    environment:
        - HUB_HOST=selenium-hub
        - HUB_PORT=4444
    depends_on:
        - selenium-hub
    ports:
        - "6902:5900"

edge:
    image: selenium/node-edge:93.0-20210804

    volumes:
        - /dev/shm:/dev/shm
    environment:
        - HUB_HOST=selenium-hub
        - HUB_PORT=4444
        - SE_EVENT_BUS_HOST=selenium-hub
        - SE_EVENT_BUS_PUBLISH_PORT=4442
        - SE_EVENT_BUS_SUBSCRIBE_PORT=4443
    depends_on:
        - selenium-hub
    ports:
        - "6901:5900"

e2e:
    build: .
    image: wdio
    environment:
        - username=${username:-user}
        - password=${password:-password}
        - headless=${headless:-true}
    volumes:
        - ./results:/wdio/results
    depends_on:
        - chrome
        - firefox
        - edge
    entrypoint: npm run test:local -- --suite all

码头文件是

FROM node:12.16.2-buster-slim

WORKDIR /wdio

COPY package*.json ./
RUN npm install --silent

COPY . .
4

1 回答 1

0

@All - 我尽我所能尝试了所有事情。没有任何效果。除了一件事

启动所有节点(FF、Edge、Chrome)...等待 1 分钟,然后启动 selenium-hub 容器。

很奇怪......但这是我迄今为止唯一的解决方案......虽然不是一个干净的解决方案......我现在可以忍受这个......

这可能对面临同样问题的人有所帮助......

于 2021-08-22T23:56:28.803 回答