有任何人遇到以下问题: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
}
}
答案 0 :(得分:1)
使用任何预定义的步骤,不会。
我可以看到你下载了mink扩展,我猜你正在寻找随之而来的步骤(它们是在 MinkContext 中定义的)。您没有粘贴 behat.yml ,所以我不确定您是否确实启用了扩展程序。有关详细信息,请参阅the official docs。
注意: MinkContext 中定义的步骤是一个好的开始,但是一旦你完成了Behat的游戏,你应该开始编写自己的步骤并使用你的语言商业领域。默认 MinkContext 步骤几乎不会反映一个人的域语言。