我正在经历在Windows上设置和运行behat的过程。安装和设置成功,现在尝试从CMD运行时我得到:
2 scenarios (2 undefined)
8 steps (8 undefined)
0m0.081s
You can implement step definitions for undefined steps with these snippets:
/**
* @Given /^I am on "([^"]*)"$/
*/
public function iAmOn($arg1)
{
throw new PendingException();
}
等等。
我正在运行命令:
F:\Program_Files\Behat\bin>Behat F:\Program_Files\Behat\vendor\behat\mink-extension\features\search.feature
我认为没有达到某些资源,因此存在所有相关目录:
Behat: "F:\Program_Files\Behat\bin\"
Features: "F:\Program_Files\Behat\vendor\behat\mink-extension\features\"
Feature context: "F:\Program_Files\Behat\bin\features\bootstrap\FeatureContext.php"
Behat config: "F:\Program_Files\Behat\bin\behat.yml"
尝试将功能文件放在此处:“F:\ Program_Files \ Behat \ bin \ features \ search.feature” 给出相同的输出。
请告诉我,如何成功运行指定的* .feature文件。感谢。
更新
当我运行“> behat -dl”时没有输出 - 我想我没有达到定义表达式。
答案 0 :(得分:1)
是的,步骤定义中缺少:
Behat\bin\features\bootstrap\FeatureContext.php
在本教程中运行测试脚本时,我感到很困惑: http://knpuniversity.com/screencast/behat/intro
如果其他人遇到此问题,请按照以下步骤操作并手动添加步骤定义: http://docs.behat.org/quick_intro.html#writing-your-step-definitions
或者请检查FeatureContext.php是否正确继承了Mink库中的步骤定义。你应该注释掉这一行:
Behat\Behat\Context\BehatContext,
添加以下行:
use Behat\MinkExtension\Context\MinkContext;
修改FeatureContext类声明以扩展MinkContext
class FeatureContext extends MinkContext { // code here }