Проблемы с поиском элементов с помощью fireWatir на странице, созданной JQuery

У меня возникла проблема с определением метки на странице, сгенерированной jQuery. Это код страницы (как показано в firebug). альтернативный текст

Я пытаюсь найти его, используя это утверждение,

assert(browser.label(:id, "acms-ws-select-label").exists?)

Поставил не находит ярлык. Любые идеи о том, что я делаю неправильно?

Обновление: запуск того же скрипта в IE с Watir, кажется, находит элемент.


person Alastair Montgomery    schedule 30.07.2010    source источник
comment
Когда запускается код? Если он запустится до того, как jQuery создаст элементы, их там не будет :)   -  person Nick Craver    schedule 30.07.2010
comment
Итак, мне нужно будет сделать задержку, чтобы дать jQuery время для создания элементов? Элемент загружается сразу после загрузки страницы. Кстати, запуск того же скрипта в IE с Watir, кажется, находит элемент.   -  person Alastair Montgomery    schedule 30.07.2010
comment
Слишком много воды для пожаротушения в моем FireWatir может вызвать пожар, мистер Ватир. (извините не удержался)   -  person Mark Schultheiss    schedule 30.07.2010
comment
Похоже на ошибку firewatir, вы должны сообщить об этом: jira.openqa.org/browse/WTR   -  person Željko Filipin    schedule 02.08.2010


Ответы (2)


Попробуйте использовать wait_until и посмотрите, будет ли это иметь значение.

Watir::Waiter.wait_until {browser.label(:id, "acms-ws-select-label").существует?}

person Jarmo Pertman    schedule 03.08.2010

Попытка добавить небольшой сон перед проверкой, просто чтобы дать время javascipt для отображения страницы.

IE может выполнять вещи jquery раньше или быстрее или запускать вещи watir немного медленнее (любой из них будет делать это), так что это «сделано» в то время, когда вы делаете там проверку.

Вы также можете использовать приглашение IRB для выполнения шагов пожарной воды вручную, если это сработает, то вы точно знаете, что это проблема времени.

person Chuck van der Linden    schedule 03.08.2010