Php Behat-实现步骤定义

Php Behat-实现步骤定义,php,behat,mink,Php,Behat,Mink,我在正确设置Behat框架时遇到困难。测试运行正常,但是没有从FeatureContext文件中提取步骤定义。尝试了其他问题的答案,但运气不佳。behat.yml文件当前存储在项目的根目录中: default: paths: features: 'bin/features' bootstrap: 'bin/features/bootstrap' context: class: 'FeatureContext' extensions: Behat

我在正确设置Behat框架时遇到困难。测试运行正常,但是没有从FeatureContext文件中提取步骤定义。尝试了其他问题的答案,但运气不佳。behat.yml文件当前存储在项目的根目录中:

 default:
 paths:
    features: 'bin/features'
    bootstrap: 'bin/features/bootstrap'
 context:
    class:      'FeatureContext'
 extensions:
     Behat\MinkExtension\Extension:
         goutte: ~
         selenium2: ~
在项目的根目录中,我有一个bin文件夹,其中包含标准的behat文件:behat.bat、webunit.bat等。在bin文件夹中,我有一个features文件夹,其中包含文件search.feature:

Feature: Search
In order to find a word
As a website user
I need to be able to search for a word

@javascript
Scenario: Searching for a word that does exist
Given I am on "http://drupalcamp.mx/search/"
When I fill in "Escriba las palabras clave" with "behat, mink"
And I press "Buscar"
Then I should see "Behavior Driven Development"
And I follow "Behavior Driven Development"
And I wait for 5 seconds 
在features文件夹I中有一个引导文件夹,其中包含文件“FeatureContext”


当我从CL中项目的根目录运行“behat”时,它在浏览器中启动测试,通过所有测试但无法识别步骤定义,它声明“您可以使用这些代码段为未定义的步骤实现步骤定义:”然后它给出了一个示例。

您需要配置自动加载程序以从自定义引导文件夹加载类

如果您使用的是composer,下面是一个如何实现的示例:

"autoload": {
    "psr-0": { "": ["src/", "bin/features/bootstrap/"]}
}
注意:bin文件夹是放置功能或上下文文件的一个非常奇怪的位置

带答案的相关问题:(实际上,可能是重复的)

"autoload": {
    "psr-0": { "": ["src/", "bin/features/bootstrap/"]}
}