我正在使用Behat和Selenium2,我想写一个测试来检查一个字段是否有焦点。这是我的实验:
/**
* @Then /^I could see username focused$/
*/
public function iCouldSeeUsernameFocused()
{
$this->getSession()->wait(1000, "$('#username').is(':focus') == true");
}
这是绿色的。还有这个:
/**
* @Then /^I could see username focused$/
*/
public function iCouldSeeUsernameFocused()
{
$this->getSession()->wait(1000, "false");
}
我可以使用Behat测试textField是否有焦点?
答案 0 :(得分:2)
您的步骤不会抛出异常,因此它确实会一直成功。
此外,等待不是正确的选择,因为它只是等待。它没有有意义的返回值,您可以在此处看到:http://mink.behat.org/api/behat/mink/session.html#wait()
相反,我会使用phpunit asserts和session的evaluateScript方法:
assertTrue($this->getSession()->evaluateScript('// your jQuery here'));
确保包含phpunit的断言函数,如下所述:http://docs.behat.org/guides/2.definitions.html#failed-steps