#docker #selenium #docker-compose #selenium-chromedriver #webdriver-io
#docker #селен #docker-compose #selenium-chromedriver #webdriver-io
Вопрос:
У меня возникла проблема при попытке настроить мою платформу тестирования WebdriverIO и запустить тесты на существующем образе selenium / standalone-chrome с помощью docker-compose.
У меня есть простой dockerfile для создания такого приложения, как это:
FROM node:12
ADD . /app
WORKDIR /app
RUN npm install
Тогда у меня есть docker-compose.yaml для сборки стека и запуска тестов:
version: "3"
services:
app:
build: .
command: npm test -- --host selenium
links:
- selenium
selenium:
network_mode: host
image: selenium/standalone-chrome
volumes:
- /dev/shm:/dev/shm
ports:
- "4444:4444"
Мой conf.js файл устанавливает хост и порт следующим образом:
exports.config = {
host: 'selenium',
port: 4444,
Независимо от того, что я пытаюсь, я продолжаю получать следующую ошибку после docker-compose build
и docker-compose up
:
[0-9] Error: Failed to create session.
app_1 | Unable to connect to "http://127.0.0.1:4444/", make sure browser driver is running on that address.
app_1 | If you use services like chromedriver see initialiseServices logs above or in wdio.log file as the service might had problems to start the driver.
Любая полезная информация о том, почему я вижу ошибки такого типа, была бы полезна. Заранее спасибо.
Комментарии:
1. Можете ли вы запустить docker compose, но запустить тесты локально, указывающие на запуск selenium в docker? Возможно, selenium standalone не запускается должным образом
2. На самом деле я решил проблему, просто обновив конфигурацию для использования
hostname
вместо хоста … это, казалось, помогло и связало два контейнера вместе для запуска моих тестов.3. Можете ли вы пометить вопрос как решенный, пожалуйста?
4. У вас есть ссылка на репозиторий шаблонов? Я пытаюсь сделать что-то подобное