Как использовать прокси с WebDriverIO и PhantomJS?

Я использую WebdriverIO с PhantomJS для тестирования веб-сайта. Однако я хотел бы использовать прокси-сервер HTTP с аутентификацией.

var client = webdriver.remote({
  desiredCapabilities: {
    browserName: 'phantomjs',
    proxy: {
      proxyType: 'manual',
      httpProxy: proxyServer.ipAddress + ':' + proxyServer.httpPort,
      socksUsername: proxyServer.username,
      socksPassword: proxyServer.password
    }
  }
});

Но я не могу открыть какой-либо URL-адрес с этими настройками. Ничего не произошло.

Однако, когда я использую firefox или chrome как browserName, он начинает загружать страницу, но по какой-то причине запрашивает имя пользователя и пароль.

var client = webdriver.remote({
  desiredCapabilities: {
    browserName: 'phantomjs',
    'phantomjs.cli.args': [
      '--proxy-type=http',
      '--proxy=' + proxyServer.ipAddress + ':' + proxyServer.httpPort,
      '--proxy-auth=' + proxyServer.username + ':' + proxyServer.password
    ].join(' ')
  }
});

Но трафик не туннелируется через прокси, он просто использует мой обычный IP-адрес.

Итак, как мне настроить WebdriverIO для использования прокси?


person Slava Fomin II    schedule 24.05.2016    source источник
comment
так что ничего? единственное, что я могу найти, это vimmaniac.com/blog/ бангал/   -  person Toolkit    schedule 24.04.2017


Ответы (1)


На случай, если кто-то ищет ответ. Это сработало для меня очень хорошо с HTTP-прокси.

{ browserName: 'phantomjs',
  "proxy": {
    "proxyType":"MANUAL",
    "httpProxy":"HOST:PORT"
  }
}

В Source Gist есть дополнительные параметры, которые могут вам понадобиться.

person dahngeek    schedule 09.02.2017
comment
на случай, если вы не читали ОП, ему нужно HTTP proxy-server with authentication - person Toolkit; 24.04.2017