Как получить пользовательский атрибут в watir? - PullRequest
1 голос
/ 14 сентября 2010

Я пытаюсь получить значение атрибута "onclick" из ссылки ниже:

<a onclick="test" href="myurl">aaa</a>

Использование link.href работает нормально (поэтому я знаю, что link - правильный объект), однако, при использовании link.attribute_value("onclick") то, что я получаю, является объектом win32 (помещает шоу #<WIN32OLE:0x2cbdf10> вместо строки "test").

Ответы [ 3 ]

2 голосов
/ 15 сентября 2010

Если у вас нет более точного решения, и оно одноразовое (Если вы можете быть уверены, что процесс разработки учитывает этот вид тестирования в следующий раз). Попробуйте:

onclick_value=browser.html[ %r{<a onclick="(.*?)" href="myurl">}mi, 1 ]
1 голос
/ 15 сентября 2010

Это сработало для меня (Windows 2003, ruby ​​1.8.7, watir 1.6.5):

browser.link(:href => /myurl/).attribute_value("onclick")
# => "test"
0 голосов
/ 15 сентября 2010

Протестировано на Mac с вайфером-вебдрайвером за рулем Firefox:

browser.link(:href => "myurl").html.split('"')[3]
# => "myurl"

Протестировано на Windows с вождением драгоценных камней IE:

browser.link(:href => /myurl/).html.split('"')[1]
# => "myurl"
...