Как нажать на элемент панели инструментов с селеном?

Веб-страница содержит кнопку с некоторым текстом, например "Тест". Эта кнопка фактически является элементом панели инструментов. ( class="tbButton" id="id",text="Test") и перенаправляет на определенную таблицу при нажатии на нее. При попытке использовать следующие методы щелчка

selenium.click("id");
 selenium.***********("id");
 selenium.click("//*[text()='Test'and contains(@class, 'tbButton')] ");

кнопка не реагирует. Может ли enybody показать альтернативные методы, способные решить проблему

1 ответ

Трудно точно узнать, в чем проблема, не зная больше о фактическом содержимом страницы, которую вы тестируете. Есть ли какой-нибудь пример панели инструментов в Интернете?

Благодаря современным интерфейсам расположение элементов с Selenium не всегда является точной наукой. Вот несколько советов:

  • С современными интерфейсами вы часто обнаруживаете, что DOM управляется, поэтому возможно, что используемый вами идентификатор больше не действует до момента вашего click(). Используйте Firebug, чтобы проверить, что у вас есть правильный элемент.

  • Часто это помогает щелкнуть родительский элемент, например, div или родительскую таблицу. Опять же, используйте FireBug, чтобы попробовать другие элементы рядом с кнопкой на панели инструментов. В качестве альтернативы Firebug иногда показывает, что элемент содержит другие элементы. Возможно, вам больше удастся изменить цель на содержащийся элемент.

  • Иногда вам приходится играть с некоторыми из альтернативных действий. Например, некоторые элементы управления реагируют на mouseDown() за которым следует mouseUp(), но не на click(). Опять же, вы часто можете получить подсказки, глядя на источник с Firebug.

licensed under cc by-sa 3.0 with attribution.