我在windows7上使用behat ..这是今天我奋斗的第四天......我写了一个功能
#homepage.feature
Feature: To test the Home page loads successfully.
Scenario:
Given I am in a session
When I request the page "index.php"
Then I should get some content
并定义了步骤
/**
* @Given /^I am in a session$/
*/
public function iAmInASession() {
$driver = new \Behat\Mink\Driver\Selenium2Driver(
'firefox', 'base_url'
);
global $session;
$session = new \Behat\Mink\Session($driver);
// start session:
$session->start();
}
/**
* @When /^I request the page "([^"]*)"$/
*/
public function iRequestThePage($page)
{
global $session;
$session->visit($page);
}
/**
* @Then /^I should get some content$/
*/
public function iShouldGetSomeContent()
{
global $session;
if( $session->getPage()->getContent() )
echo $session->getPage()->getContent();
else
throw new Exception("The page couln't load successfully!");
}
它还向我展示了147个未定义的场景和878个未定义的步骤,其中一些步骤在FeatureContext.php中定义
请帮助!!!
答案 0 :(得分:1)
对不起,我犯了几个错误....我没有创建功能目录,而是将我的功能添加到vendor \ behat \ behat \ features目录和供应商的步骤定义\贝哈特\贝哈特\设有\引导\ FeatureContext.php
为了使其工作,我必须通过键入在项目的根目录中创建功能目录 vendor \ behat \ behat \ bin \ behat --init in command prompt
所有功能都应该驻留在此目录中,步骤应该放在root \ features \ bootstrap \ FeatureContext.php
中此外,uri应该是'http://'.localhost/Project/.$page in $ session-> visit()
希望这有助于某人!