Тест WebdriverIO не запускается в docker среде разработки - PullRequest
0 голосов
/ 12 марта 2020

Я пытаюсь запустить простой тест, который переходит на google.com и фиксирует его показатели эффективности. Я использую docker compose. В одном контейнере есть приложение автоматизации webdriverIO, а в другом - селен / селен chrome, работающий через порт 4444. Ниже приведены мои docker -композиция, wdio и сообщение об ошибке. Я предполагаю, что контейнер автоматизации не может связаться или запустить тесты на портах 4444 контейнеров селена. Selenium успешно работает в своем контейнере. Что я могу делать не так?

docker -compose.yml:

version: '3'
services:
  app:
    container_name: perfApp
    build: .
    depends_on:
      - selenium
    links:
      - selenium
    command: npm run test:compose -- --host selenium
    volumes:
      - ./app:/app

  selenium:
    container_name: seleniumApp
    image: selenium/standalone-chrome
    expose:
      - "4444"
    ports:
      - "4444:4444"
    network_mode: host
    volumes:
      - ./:/app

wdio:

exports.config = {
    sync: true,
    path: '/wd/hub',
    specs: [
        './test/specs/**/basic.js'
    ],
    maxInstances: 10,
    capabilities: [{
        browserName: 'chrome',
    }],
    logLevels: 'trace',
    bail: 0,
    waitforTimeout: 10000,
    connectionRetryCount: 3,
    services: ['devtools'],
    framework: 'mocha',
    reporters: ['allure'],
    mochaOpts: {
        ui: 'bdd',
        timeout: 360000
    },
    afterTest: function(test, context, { error, result, duration, passed, retries }) {
        if (!passed) {
            browser.takeScreenshot();
        }
    },
}

Ошибка: [0-0] 2020-03-12T17: 03: 51.087Z ОШИБКА веб-драйвера: запрос не выполнен из-за ошибки: подключение ECONNREFUSED 127.0.0.1:4444 в TCPConnectWrap.afterConnect [as oncomplete] (net. js: 1137: 16) [0–0] 1022 *. js: 1137: 16) [0-0] 2020-03-12T17: 03: 51.088Z ОШИБКА @ wdio / runner: Ошибка: не удалось создать сеанс. Невозможно подключиться к «127.0.0.1:4444», убедитесь, что драйвер браузера работает по этому адресу.

...