Запуск тестов selenium с использованием drupalextension внутри контейнеров ddev docker
Только что получил помощь от rfay на Drupal slack, и хотел опубликовать как проблему, так и решение здесь для справки других.
Проблема: получить DrupalExtension на основе тестирования, работающего внутри контейнеров ddev. Это включает добавление отдельного контейнера selenium в существующую конфигурацию и возможность ссылаться на контейнер веб-узла.
Ответы - Запуск тестов selenium с использованием drupalextension внутри контейнеров ddev docker / Running selenium tests using drupalextension inside ddev docker containers

26.07.2018 12:08:51
Предварительные требования: иметь рабочий экземпляр ddev, размещающий Drupal. Уже есть примеры, чтобы настроить это, поэтому я не буду повторять это здесь.
Вышеуказанная задача требовала следующих дополнений:
- селен контейнер: контейнер работает селен. Я использовал автономную версию chrome. Добавьте следующее к вашему .папка ddev:
Файл: докер-сочинять.селен.в формате YML
version: '3.6'
services:
selenium:
container_name: ddev-${DDEV_SITENAME}-selenium
image: selenium/standalone-chrome-debug:3.13.0-argon
networks:
default:
aliases:
- web
Последний бит имеет решающее значение; контейнер selenium должен знать о веб-контейнере, в котором запущен экземпляр drupal, чтобы подключиться к нему, но поскольку он является зависимостью веб-контейнера, вы не можете использовать "ссылки". Вы должны использовать подход псевдонимов, используя сеть по умолчанию.
- сочинять переопределить: файл переопределения значений по умолчанию для веб-контейнеру, чтобы связать селен контейнер к нему.
Файл: докер-сочинять.переопределение.в формате YML
version: '3.6'
services:
web:
depends_on:
- db
- selenium
links:
- db:db
- selenium:selenium
- Конфигурация Behat: следующая конфигурация Behat для
MinkExtension
работала для меня:
(изменить файл behat.в формате YML)
default:
extensions:
"Behat\\MinkExtension":
goutte: null
base_url: 'http://web'
javascript_session: selenium2
selenium2:
browser: "chrome"
wd_host: http://selenium:4444/wd/hub
capabilities:
extra_capabilities:
idle-timeout: 50
base_url
и wd_host
имели решающее значение для получения этой работы.
Для получения дополнительной информации о последних см. В описании шага 5 в drupalextension документы


