Разработчик (и) | Брет Петтичорд, Чарли Бейкер, Ангрез Сингх, Яри Баккен, Ярмо Пертман, Хью Макгоуэн, Андреас Толфсен, Пол Роджерс, Дэйв Гувер, Сай Венкатакришнан, Том Коупленд, Алекс Родионов, Титус Фортнер |
---|---|
Стабильная версия | 6.16.5 / 25 декабря 2018 г.; 21 месяц назад (2018-12-25) |
Написано на | Ruby |
Операционная система | Кросс-платформенная |
Тип | Тестирование программного обеспечения framework для веб-приложения |
Лицензия | лицензия MIT |
Веб-сайт | watir.com |
Watir (Web A приложение T esting in Ruby, произносится как вода) - это семейство библиотек Ruby с открытым исходным кодом для автоматизации веб-браузеров. Он управляет Internet Explorer, Firefox, Chrome, Opera и Safari и доступен как RubyGems драгоценный камень. Watir был разработан Бретом Петтикордом и Полом Роджерсом.
Проект Watir состоит из нескольких небольших проектов. Наиболее важными из них являются watir-classic, watir-webdriver и watirspec.
Watir-classic использует тот факт, что в Ruby встроены возможности связывания и встраивания объектов (OLE). Таким образом, можно программно управлять Internet Explorer. Watir-classic работает иначе, чем инструменты тестирования на основе HTTP, которые работают, имитируя браузер. Вместо этого Watir-classic напрямую управляет браузером через протокол OLE, который реализован в архитектуре Component Object Model (COM).
COM разрешает межпроцессное взаимодействие (например, между Ruby и Internet Explorer), а также создание динамических объектов и манипулирование ими (что программа Ruby делает с Internet Explorer). Microsoft называет это OLE-автоматизацией, а управляющую программу - контроллером автоматизации. Технически процесс Internet Explorer является сервером и обслуживает объекты автоматизации, раскрывая их методы; тогда как программа Ruby становится клиентом, который манипулирует объектами автоматизации.
Watir-webdriver - это современная версия Watir API, основанная на Selenium. Selenium 2.0 (selenium-webdriver) призван стать эталонной реализацией спецификации WebDriver. В Ruby Яри Баккен реализовал Watir API как оболочку вокруг Selenium 2.0 API. Watir-webdriver не только является производным от Selenium 2.0, он также построен на основе спецификации HTML, поэтому Watir-webdriver всегда должен быть совместим с существующими спецификациями W3C.
Watirspec - это исполняемая спецификация Watir API, например RubySpec для Ruby.