1

在主页上搜索测试工作正常。但我不确定提交应该如何工作以及如何调试它。这就是我所拥有的:

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: ~

搜索功能

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 提供的,站点的其他部分是)?

更新

从 BroserKit/Client 内部调试显示应该提交表单的 URI 是错误的,返回 404。并且在详细模式下没有显示。

4

1 回答 1

0

如果您的表单提交是由 Javascript 处理的,您应该使用 Selenuim2 而不是 goutte,并在您的功能文件顶部添加 @javascript 注释。

于 2013-12-02T15:53:57.440 回答