2013-12-02 3 views
1

Поиск теста на домашней странице работает нормально. Но я не уверен, как должен работать submit и как его отлаживать. Вот что у меня есть:Goutte не отправляет форму

behat.yml

default: 
    formatter: 
     name: progress 
    extensions: 
     Behat\Symfony2Extension\Extension: 
      mink_driver: true 
      kernel: 
       env: test 
       debug: true 
     Behat\MinkExtension\Extension: 
      base_url:  http://my.dev/ 
      goutte: ~ 

Search.feature

Feature: Search 
    Search 

    Background: 
     Given I am on "/" 

    Scenario: Empty Search 
     When I fill in "query" with "love" 
     And I press "Search" 
     Then I should see "Love Results" 

Баш

$ ./bin/behat --verbose --profile=default "@MySiteBundle/Search.feature" 
...F.P-..P-..P--.F---.F--- 

(::) failed steps (::) 

01. The text "Love Results" was not found anywhere in the text of the current page.     
+--[ HTTP/1.1 200 | http://my.dev/ | GoutteDriver ] 

Таким образом, адрес по-прежнему «/» означает, что форма не была отправлена.

Неужели Goutte ошибочный драйвер для этой цели? Или это моя странная конфигурация (потому что «/» не обслуживается symfony2, другая часть сайта)?

UPDATE:

Debug изнутри BroserKit/Клиент показывает, что URI, где, как предполагается, форма для представления неправильно, возвращает 404. И behat в расширенном режиме не показывает, что.

ответ

0

Если ваша форма submit обрабатывается Javascript, вы должны использовать Selenuim2 вместо goutte и добавить аннотацию @javascript поверх вашего файла функций.

+0

Это «классическая» форма. нет js. – coviex

Смежные вопросы