为什么Selenium找不到动态添加的DOM元素?

时间:2010-12-08 00:27:52

标签: javascript jquery selenium capybara

我用jQuery添加了一个DOM元素(一个链接)。我可以在Firebug中看到该元素,但由于某种原因,Selenium无法找到它。这是怎么回事?

注意:不涉及AJAX,因此几乎可以立即添加DOM元素。

==编辑==

这是一些代码(使用jQuery),它将一个链接附加到文档的末尾:

$element = $("<a id="foo" href="#"></a>");
$element.appendTo($("body"));

我正在使用Capybara(使用Selenium)查找链接并单击它,如下所示:

find("#foo").click

在我开始使用jQuery向DOM添加元素之前,我对Capybara或Selenium没有任何问题。

1 个答案:

答案 0 :(得分:6)

尝试在测试代码中使用waitForElementPresent。