【问题标题】:Behat/Mink not finding a default step for a "Then" statementBehat/Mink 没有找到“Then”语句的默认步骤
【发布时间】:2015-07-26 14:36:39
【问题描述】:

我无法让 Mink/Behat 找到短语的默认步骤

Then I should see "some text" in the element "element"

这是我的 thepage.feature 文件:

Feature: Page Works
  In order to use the page
  As a visitor
  I need to be able to load it and see content

Scenario: Navigating to the page
  Given I am on "mypage.php"
  #Then I should see "some text"
  #Then the "body" element should contain "sometext"
  #Then I should see "sometext" in the "body" element

我的FeatureContext 扩展了MinkContext,所以我不明白为什么下面的两个Then 语句出现为未定义,但上面的语句有效。

  Scenario: Navigating to the page        # features\wikipedia.feature:6
    Given I am on "thepage.php"           # FeatureContext::visit()
    Then I should see "sometext" in the element "body"

1 scenario (1 undefined)
2 steps (1 undefined)

由于Given 语句有效,我不明白有什么问题!肯定不会是yml文件或者composer.json吧?

composer.json:

{
    "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/"
    }
}

behat.yml:

default:
  extensions:
    Behat\MinkExtension\Extension:
      base_url: http://localhost
      goutte: ~
      selenium2: ~

问题还可能出在哪里?谢谢

【问题讨论】:

    标签: php behat mink


    【解决方案1】:

    尝试使用

    Then I should see "sometext" in the "body" element
    

    而不是

    Then I should see "sometext" in the element "body"
    

    这里是MinkContext method description

    【讨论】:

      【解决方案2】:

      试试这些(从here得到它):

      composer.json

      "require-dev": {
          "behat/behat": "2.5.5",
          "behat/mink-extension": "1.3.3",
          "behat/mink": "1.5.0",
          "behat/symfony2-extension": "1.1.2",
          "behat/mink-selenium2-driver": "1.1.1",
          "behat/mink-browserkit-driver": "1.1.0",
          "behat/mink-goutte-driver": "1.0.9"
      }
      

      behat.yml

      default:
          formatter:
              name: pretty
              parameters:
                  output_styles:
                      comment: [ magenta ]
          context:
              class: Application\BackendBundle\Features\Context\FeatureContext
          extensions:
              Behat\Symfony2Extension\Extension:
                  mink_driver: true
                  kernel:
                      env: test
                      debug: true
              Behat\MinkExtension\Extension:
                  base_url: 'http://football.local/app_test.php/'
                  javascript_session: selenium2
                  browser_name: firefox
                  goutte: ~
                  selenium2: ~
          paths:
              features: %behat.paths.base%/src
              bootstrap: %behat.paths.features%/Context
      

      更多示例,look here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多