Я хочу запустить тесты testcafe в браузере, установленном на удаленном компьютере, используя селектор сетки селена изображение (selenium / standalone-chrome-debug).
Я могу выполнить тесты testcafe в этом удаленном браузере с моего локального компьютера с помощью команды:
SELENIUM_SERVER=http://<remote machine IP>:4444/wd/hub testcafe selenium:chrome tests/
Я вижу, что тесты выполняются, и их предварительный просмотрв браузере, когда я подключаюсь к машине / докеру с помощью VNC.Все работает отлично.
Проблема в том, что вместо того, чтобы использовать приведенную выше команду, я пытаюсь выполнить тесты с моего локального компьютера с помощью Docker.Это мой docker-compose.yml
файл:
my-app:
image: my-app:0.1
ports:
- "3000:3000"
auit:
build:
context: .
dockerfile: Dockerfile.auit.testcafe
ports:
- "1337:1337"
- "1338:1338"
shm_size: 2G
environment:
- SELENIUM_SERVER=http://<remote machine IP>:4444/wd/hub
depends_on:
- my-app
entrypoint: ["/opt/testcafe/docker/testcafe-docker.sh", "selenium:chrome", "/tests"]
Содержимое Dockerfile.auit.testcafe
:
FROM testcafe/testcafe
WORKDIR /
USER root
COPY ./tests /tests
RUN npm install testcafe-browser-provider-selenium
Итак, когда я запускаю:
docker-compose up auit
браузерзапущен в моей сетке селена, но он пытается подключиться к IP моего локального док-контейнера вместо моей машины.Я пытался использовать параметр --hostname
для установки IP-адреса моего локального компьютера, но я получаю сообщение об ошибке:
ERROR The specified "<my IP>" hostname cannot be resolved to the current machine.
Как я могу решить эту проблему?