как активировать норку в поведении

Я пытаюсь использовать behat и mink вместе, читая эту ссылку:

http://docs.behat.org/cookbook/behat_and_mink.html#method-1-composer< /а>

и пытаюсь активировать Mink в фреймворке Behat, но у меня не работает :(

вот инструкция по текстовой форме

    And this executable will already autoload all the needed classes in order to activate MinkExtension through behat.yml.

Now lets activate it:

Я думаю, он говорит о /vendor/behat/mink-extension/behat.yml ?

Я добавил эти строки в этот файл

# behat.yml
default:
    extensions:
        Behat\MinkExtension\Extension:
            goutte: ~
            selenium2: ~

Но когда я делаю $bin/behat -dl, я вижу только

Given /^I am in a directory "([^"]*)"$/
Given /^I have a file named "([^"]*)"$/
 When /^I run "([^"]*)"$/
 Then /^I should get:$/

Вроде минк-расширение не активировано...но как мне его активировать, если я сделал все что написано в мануале :(

P.S. Я просто пытался следовать инструкциям (отсюда http://docs.behat.org/cookbook/behat_and_mink.html ) в совершенно новом чистом месте (новая папка), но он не работает, он показывает мне следующую ошибку

bin/behat -dl

  [RuntimeException]                                                       
  Context class not found.                                                 
  Maybe you have provided wrong or no `bootstrap` path in your behat.yml:  
  http://docs.behat.org/guides/7.config.html#paths                         

Но в учебнике ничего не говорится о путях и модификациях yml :( Может быть, существует какая-либо обновленная версия учебника?

на основе сообщения об ошибке я должен сделать какой-то файл php в папке начальной загрузки, но это не было описано в учебнике :( странно

РЕШЕНО:

$ mkdir behat_mink_test && cd behat_mink_test
$ touch composer.json
$ echo '{
>     "require": {
>         "behat/behat": "2.4.*@stable",
>         "behat/mink": "1.4.*@stable",
>         "behat/mink-extension": "*",
>         "behat/mink-goutte-driver": "*",
>         "behat/mink-selenium2-driver": "*"
>     },
>     "minimum-stability": "dev",
>     "config": {
>         "bin-dir": "bin/"
>     }
> }' > composer.json
$ curl http://getcomposer.org/installer | php
$ php composer.phar install
$ bin/behat -h
$ touch behat.yml
$ echo 'default:
>     extensions:
>         Behat\MinkExtension\Extension:
>             goutte: ~
>             selenium2: ~' > behat.yml
$ bin/behat -dl

и, наконец, теперь это работает :) спасибо


person user1016265    schedule 16.09.2012    source источник
comment
Спасибо, это избавило меня от некоторого замешательства, которое у меня было.   -  person Patrick    schedule 20.05.2013


Ответы (1)


Вы не должны редактировать файл behat.yml, расположенный в /vendor/behat/mink-extension/behat.yml. Вы должны добавить эти строки в файл behat.yml в корне вашего проекта (каталог, где находится подкаталог bin). Если там нет файла behat.yml, просто создайте его-

person Carlos Granados    schedule 16.09.2012
comment
Вы также можете [использовать этот пример mink][1] [1]: github.com/Behat/MinkExtension- пример - person slatunje; 15.11.2012
comment
Следуя этому руководству, я столкнулся с той же проблемой. Забавно, что они не говорят специально помещать behat.yml в корневой каталог... Спасибо! - person Michael Gruber; 13.04.2013
comment
Да, это было не очень ясно в документации поведения. Это звучало больше так, как будто вам нужно было изменить существующий файл. Типа отбросил меня на некоторое время. - person Patrick; 20.05.2013