Behat“我应该看到”功能没有检测到链接

时间:2014-03-20 15:46:16

标签: javascript testing moodle behat gherkin

我正在尝试搜索Moodle的管理块。但是,当我使用“按'搜索'”并使用“我应该看到”功能时,该功能即使在那里也不会检测到内容。

你能帮帮我吗?

这有点类似于这个 - > behat step "I should see" does not see

Then I fill the moodle form with:
        | realname | ajones |
      And I check "U"
      And I press "Search"
      #And I should see "alice jones"
      And I am on homepage
      Then I fill the moodle form with:
        | realname | jo |
      And I check "U"
      And I press "Search"
      #And I should see "bob jones"
      #And I should see "alice jones"
      #And I should see "jon stewart"

      And I am on homepage 
      Then I fill the moodle form with:
        | realname | alice |
      And I check "U"
      And I press "Search"
      #Then I should see "No users found"

2 个答案:

答案 0 :(得分:0)

您需要先等待页面加载。

诀窍是等到文本可用。我记不起确切的代码,但如果你去这个链接

http://docs.behat.org/cookbook/behat_and_mink.html

并搜索此

$这 - >的getSession() - >等待(

你会发现这个

/**
 * @Then /^I wait for the suggestion box to appear$/
 */
public function iWaitForTheSuggestionBoxToAppear()
{
    $this->getSession()->wait(5000,
        "$('.suggestions-results').children().length > 0"
    );
}

这将等待5秒钟,直到出现建议结果。我记得写过类似于等待文本的内容,但我无法访问代码。

答案 1 :(得分:0)

我使用此自定义步骤来检查链接

/**
     * @Given /^a link to "([^"]*)" should exist$/
     */
    public function aLinkToShouldExist($url) {
        return new Then ( "I should see an \"a[href='$url']\" element" );
    }

并在$ url中我真的把我的链接地址。但你应该编辑你的帖子并把你的代码看出来是什么问题