预定义的步骤

时间:2013-02-27 11:11:31

标签: php behat phar

有任何人遇到以下问题:behat显然工作正常,但它没有预定步骤:

的结果
\tests> php .\behat\behat.phar -di
即使文件FeatureContext.php没有定义步骤,

也是空的。 我的behat版本是2.4.0,它是在PHAR的帮助下得到的,PHP版本是5.4.9。 以下是我安装的一些细节。树结构如下:

tests> dir
Directory: xxx\tests
Mode      Name                                       
d----     behat                                   
d----     features                                   
-a---     bootstrap.php                                   
-a---     phpunit.xml                                   
-a---     WebTestCase.php   

behat文件夹包含以下文件:

tests> dir .\behat
Directory: xxx\tests\behat
Mode       Name
-a---     behat.phar                                   
-a---     mink.phar                                   
-a---     mink_extension.phar

而feature文件夹只有bootstrap目录

   tests> dir .\features
Directory: xxx\tests\features
    Mode     Name
    d----   bootstrap   

其中包含唯一具有以下内容的文件FeatureContext.php

<?php

use Behat\Behat\Context\ClosuredContextInterface,
    Behat\Behat\Context\TranslatedContextInterface,
    Behat\Behat\Context\BehatContext,
    Behat\Behat\Exception\PendingException;
use Behat\Gherkin\Node\PyStringNode,
    Behat\Gherkin\Node\TableNode;

class FeatureContext extends BehatContext
{
    public function __construct(array $parameters)
    {
        // Initialize your context here
    }
}

1 个答案:

答案 0 :(得分:1)

使用任何预定义的步骤,不会

我可以看到你下载了mink扩展,我猜你正在寻找随之而来的步骤(它们是在 MinkContext 中定义的)。您没有粘贴 behat.yml ,所以我不确定您是否确实启用了扩展程序。有关详细信息,请参阅the official docs

注意 MinkContext 中定义的步骤是一个好的开始,但是一旦你完成了Behat的游戏,你应该开始编写自己的步骤并使用你的语言商业领域。默认 MinkContext 步骤几乎不会反映一个人的域语言。