Следующий пример демонстрирует базовые принципы
Следующий пример демонстрирует базовые принципы работы с библиотекой Watir. Сохраните этот код в файле и запустите его на выполнение. Со стороны будет казаться, что браузер делает все сам: загружает страницы, заполняет формы, нажимает на кнопки и т.д. Для удобства, активный элемент подсвечивается желтым цветом. # # simple_example.rb # # Александр Симаков, <xdr (тчк) box на Google Mail> # http://alexander-simakov.blogspot.com/ #
# Подключаем библиотеку Watir require 'watir'
# Открываем новое окно IE ie = Watir::IE.new
# Переходим на страницу Google ie.goto "http://www.google.ru/"
# Заполняем поисковый запрос ie.text_field(:name, "q").set "Watir home page"
# Нажимаем на кнопку "Мне повезет!" ie.button(:name, "btnI").click
# Проверяем, есть ли на странице указанный текст if ie.text.include? "Web App Testing in Ruby" puts "Yes!" end
Итак, давайте разберемся как работает эта программа. В начале мы открываем новое окно Internet Explorer. Отмечу, что Watir также позволяет подключаться и к уже открытым окнам. Нужное окно при этом можно найти либо по ссылке, которая указана в адресной строке, либо по заголовку окна.
Далее мы переходим на сайт Google. На главной странице имеется поле для ввода запроса и две кнопки. Watir позволяет искать элементы расположенные на странице по многим параметрам: по атрибутам id, name, class, по заголовку, по ссылке, по порядковому номеру, по выражению xpath и т.д. В зависимости от типа элемента к которому вы хотите обратиться этот список может несколько отличаться. Так в строке 18 листинга мы обращаемся к текстовому полю у которого атрибут name имеет значение q. Если такой элемент существует, то Watir вернет объект класса TextField. В этом классе определен метод set, который заполняет текстовое поле: мы хотим найти домашнюю страницу Watir.
Теперь нажмем на кнопку "Мне повезет!". В отличие от обычного поиска мы автоматически перейдем по самой релевантной ссылке. Поскольку наш запрос достаточно точен мы с очень высокой долей вероятности попадем на домашнюю страницу проекта Watir.
Отмечу, что библиотека Watir позволяет не только находить объекты по различным критериям и манипулировать ими, но и анализировать результат. Так в строке 24 листинга мы проверяем содержит ли страница на которую мы перешли строку "Web App Testing in Ruby". Эту возможность можно использовать для написания модульных тестов.
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий