Я немного дальше продвигаю некоторые образцы тестов/спецификаций от Watir до Selenium. После моего последнего вопроса здесь и предлагаемого ответа я начал использовать Selenium 2.0 с WebDriver вместо Selenium 1.Selenium 2.0 Webdriver & Ruby, методы элемента ссылок, отличные от .text? Навигация по ссылкам в массиве?
В данном примере рассматривается сбор всех ссылок внутри таблицы в массив - эта часть завершена. Однако, как только ссылки находятся в массиве, единственным значимым способом, с которым я могу взаимодействовать с ними, является текст .text. Использование @ driver.navigate.to Array [1] дает ошибку URL-адреса в браузере, а link.href или .src являются недопустимыми.
Реализация Watir собрала эти ссылки (страницы, добавленные пользователями через CMS), сохранила их в массиве и затем посетила каждую страницу по очереди, представив ведущую форму. Я считаю, что могу заставить это работать с помощью Selenium и переходить на домашнюю страницу, содержащую все ссылки между представлениями ведущей формы, но это может означать сотни дополнительных загрузок страниц, кэшированных или нет.
код до сих пор: '@countries = Array.new
@browser.navigate.to "http://www.testingdomain{$env}.com/global"
@browser.find_elements(:xpath, "//table[@class='global-list']//a").each do |link|
@countries << [link.text, link.href] ## The original WATIR line that needs an update
end #links
@countries.uniq! #DEBUG for false CMS content'
Ближайший пункт, который я смог найти в документации селена WebDriver был (строка) методом .attribute, но опять же, не уверен, из каких атрибутов
Возможно, вам захочется посмотреть на watir-webdriver, который предоставляет API Watir поверх технологии WebDriver: http: // github. com/jarib/watir-webdriver – jarib
Спасибо, Джариб, я посмотрел на него и обязательно проведу его вместе с Selenium 2/Webdriver. –