Невозможно запустить событие Java с помощью Watir и как найти элемент, который не имеет никакого атрибута - PullRequest
0 голосов
/ 29 декабря 2011

Я новичок в Ватире и Руби.У меня есть 2 вопроса, по которым я не могу найти решение.Я гуглил уже более 30 часов и до сих пор не получил рабочего решения.Любая срочная помощь будет очень полезна.

Вопрос 1: Как запустить событие javascript.

HTML-код, как указано ниже.из решений любит, fireevent и т. д., который был на Google.Пожалуйста, напишите мне кусок кода, который будет работать для упомянутого сценария.

Вопрос 2: Как щелкнуть или проверить, существует ли элемент для HTML, упомянутый ниже.

Сценарий 1:html text

input onclick="history.go(-1)" type="button" value="Back"/

Сценарий 2: <center> под этим-> Текст - Идентификатор входа.Это все, что присутствует.Это ячейка таблицы, которая находится во фрейме.Пожалуйста, напишите мне код для обоих сценариев.

Заранее спасибо.

Ответы [ 2 ]

3 голосов
/ 29 декабря 2011

Ну, если у вас есть два вопроса, напишите два вопроса.:)

Если страница общедоступна, опубликуйте ссылку на нее, это лучший способ для нас помочь.

По поводу событий javascript см. Как узнать, какой JavaScriptсобытия сработали?

Вы можете нажать на кнопку следующим образом:

browser.button(:value => "Back").click

Для центрального элемента вам нужно будет предоставить больше HTML.Я не уверен, что тебе нужно с этим делать.

0 голосов
/ 30 декабря 2011

Прежде всего, что касается выбора элементов, которые не имеют атрибута, посмотрите ответы (все три) на этот вопрос SO, заданный некоторое время назад: Доступ к элементу без атрибутов в Watir

Что касается ваших конкретных примеров / вопросов здесь: Если вы обратитесь к списку методов вики watir wiki, поддерживаемых для выбора элементов , вы увидите, что элемент изображения (тег img) может быть выбран с помощьюисточникИтак, во-первых, просто сделайте это

browser.image(:src => '/WSWeb/images/someimage.gif').click

, если по какой-то причине метод click не работает, то вы можете попробовать запустить событие onclick напрямую

browser.image(:src => "/WSWeb/images/someimage.gif").fire_event('onclick')

Для второгоКроме того, вы также заметите, что значение можно использовать для выбора элементов «кнопки», которые включают теги ввода типа = кнопка.таким образом, чтобы увидеть, есть ли кнопка

browser.button(:value => 'Back').exists? #(will return true or false)

Для второго сценария Watir в настоящее время не поддерживает выбор по большинству форматирующих тегов, таких как center, поэтому вам нужно будет посмотреть, какой элемент содержит этот текст.Вы говорите, что это ячейка таблицы (td) внутри фрейма (которую я не знаю, как определить, так как вы не предоставляете html), и если это так, и я правильно понимаю, то

browser.frame(:how => 'what').cell(:text => 'Login Id').exists?

должно работать (при условии, что текст на самом деле «Идентификатор входа», а не «Идентификатор входа»)

...