无法启用 Behat Mink 扩展


Can't enable Behat Mink extension

我正在尝试使用带有 mink 扩展的 behat 来创建一个简单的案例场景。不过,我一开始就被困住了,几个小时的谷歌搜索似乎没有帮助。

我的作曲家需要

  "require": {
    "behat/behat": "3.0.6",
    "behat/mink": "1.6.*",
    "behat/mink-extension": "*",
    "behat/mink-goutte-driver": "*"
  }

我的贝哈特.yml

default:
  autoload:
    '': %paths.base%/features/bootstrap
  suites:
    default:
      paths:
        - %paths.base%/features
      extensions:
        Behat'MinkExtension:
          base_url:  'http://example.com'
          goutte: ~

我的功能上下文.php

<?php
use Behat'Behat'Context'SnippetAcceptingContext;
use Behat'MinkExtension'Context'MinkContext;
/**
 * Behat context class.
 */
class FeatureContext extends MinkContext implements SnippetAcceptingContext
{
    /**
     * Initializes context.
     *
     * Every scenario gets it's own context object.
     * You can also pass arbitrary arguments to the context constructor through behat.yml.
     */
    public function __construct()
    {
    }
    /**
     * @Given /^I am on home page$/
     */
    public function iGoToHomePage()
    {
        $session = $this->getSession();
        $session->visit($this->locatePath('/'));
    }
}

每当我使用我的功能运行 behat 时,我都会得到

  Mink instance has not been set on Mink context class. Have you enabled the Mink Extension? (RuntimeException)

我仔细检查了缩进数十次,检查了供应商目录中是否存在命名空间,交换了东西。似乎没有什么帮助 - 这里有什么问题?

extensions不适用于

每个套件,因此将该指令上移一个级别,例如:

default:
  autoload:
    '': %paths.base%/features/bootstrap
  extensions:
    Behat'MinkExtension:
      base_url:  'http://example.com'
      goutte: ~
  suites:
    default:
      paths:
        - %paths.base%/features