Почему Selenium не может найти динамически добавляемые элементы DOM?

Я добавил элемент DOM (ссылку) с помощью jQuery. Я вижу элемент в Firebug, но Selenium почему-то не может его найти. Что здесь происходит?

Примечание: здесь не используется AJAX, поэтому элемент DOM добавляется почти сразу.

== РЕДАКТИРОВАТЬ ==

Вот некоторый код (с использованием jQuery), который добавляет ссылку в конец документа:

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

Я использую Capybara (с Selenium), чтобы найти ссылку и щелкнуть ее, например:

find("#foo").click

У меня не было проблем с Capybara или Selenium, пока я не начал добавлять элементы в DOM с помощью jQuery.


person Matt Fichman    schedule 08.12.2010    source источник
comment
Опубликуйте код, демонстрирующий проблему.   -  person Don Roby    schedule 08.12.2010
comment
Как вы пытаетесь найти? Без этого ответ невозможен.   -  person Rajasankar    schedule 08.12.2010


Ответы (1)


Попробуйте использовать waitForElementPresent в своем тестовом коде.

person Jigar Shah    schedule 08.12.2010