Selenium webdriver 测试输入字段是否聚焦

Selenium webdriver 测试输入字段是否聚焦,selenium-webdriver,bdd,behat,mink,Selenium Webdriver,Bdd,Behat,Mink,我正在将Behat与Selenium2一起使用,我想编写一个测试来检查字段是否聚焦。这是我的实验: /** * @Then /^I could see username focused$/ */ public function iCouldSeeUsernameFocused() { $this->getSession()->wait(1000, "$('#username').is(':focus') == true"); } 这是绿色的阿尔维斯。还包括: /**

我正在将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测试文本字段是否聚焦吗?

您的步骤不会抛出异常,因此它将始终成功

此外,在这里,等待不是正确的选择,因为它所做的只是等待。它没有有意义的返回值,您可以在这里看到:

相反,我将使用phpunit断言和会话的evaluateScript方法:

assertTrue($this->getSession()->evaluateScript('// your jQuery here'));

确保包含phpunit的断言函数,如下所述:

我想您可以基于if语句引发异常。我觉得这一次房间更整洁。可能是因为xUnit(: