Попытка Настроить Selenium + Behat На Mac


Так что я отлично справился с браузером без головы, однако я хотел использовать Selenium 2 для тестирования некоторых тяжелых страниц JavaScript.

Когда я запускаю vendor/bin/behat, я получаю эту ошибку в первом сценарии, помеченном @javascript:

Curl error thrown for http POST to http://localhost:4444/wd/hub/session with params: {"desiredCapabilities":{"browserName":"firefox","version":"8","platform":"ANY","browserVersion":"8","browser":"firefox","name":"Behat test","deviceOrientation":"portrait","deviceType":"tablet","selenium-version":"2.31.0","max-duration":300},"requiredCapabilities":[]}

      couldn't connect to host

Я не знаю, почему он подключается к неправильному порту, когда я определил 443 в своем конфигурационном файле. И почему там сказано, что тип устройства - таблица? Вот мой behat.yml:

default:
  paths:
    features: tests/functional/features
    bootstrap: tests/functional/features/bootstrap
  extensions:
    Behat\MinkExtension\Extension:
      base_url: http://myvirtualhost.com
      goutte: ~
      selenium2: ~
  context:
    parameters:
      wd_host: 127.0.0.1:4443/wd/hub
      wd_capabilities: { "browser": "firefox", "version": "21"}

У меня есть Selenium 2, работающий на 127.0.0.1:4443/wd/концентратор должным образом.

У меня установлен Firefox версии 21.

Это мой композитор.json, у меня есть драйвер Selenium 2:

{
    "name": "my-website",
    "description": "My Website",
    "minimum-stability": "dev",
    "require": {
        "php": ">=5.3",
        "zendframework/zendframework": "2.1.5",
        "doctrine/common": "dev-master#d7987c96675e153638729383577090feed9854f1"
    },
    "require-dev": {
        "phpunit/phpunit": "3.7.x-dev#19f1d742e0c36150001062f592c93f80aef3a9fd",
        "behat/behat": "dev-develop#1f1bead31e96da5e30fd5d499d5cf66d29b68cf6",
        "behat/mink": "v1.4.3",
        "behat/mink-extension": "dev-master#ef2c8639ebc254f0ff6e555b7834700caf5db9c4",
        "behat/mink-goutte-driver": "dev-master#v1.0.8",
        "behat/mink-selenium2-driver": "v1.0.6"
    }
}
Author: Alex, 2013-06-05

2 answers

Вам следует настроить параметры wd_host и wd_parameters в разделе selenium2, а не параметры:

default:
  extensions:
    Behat\MinkExtension\Extension:
      selenium2:
        wd_host: 127.0.0.1:4443/wd/hub
        capabilities:
          browser: firefox
          version: 21

Дважды проверьте, являются ли wd_host и wd_capabilities правильными именами параметров.

 11
Author: Jakub Zalas, 2015-04-08 14:52:11

В случае, если это кому-то поможет, мне пришлось использовать "возможности", а не "wd_capabilities", чтобы это работало на моей машине, т. Е.:

#behat.yml    
default:
  extensions:
    Behat\MinkExtension\Extension:
      base_url:  'http://hostname-of-the.app'
      default_session: selenium2
      selenium2:
        wd_host: 127.0.0.1:4444/wd/hub
        capabilities: { "browser": "firefox", "version": "ANY", "selenium-version": "ANY", "deviceType": "ANY"}
    SensioLabs\Behat\PageObjectExtension\Extension: ~

Сервер Selenium 2.42.1, поведение 2.5.0.

 3
Author: russthegibbon, 2014-12-05 14:55:56