Робота з WebDriver (ч.1, встановлення та запуск)

Введення у WebDriver
Основним нововведенням Selenium 2.0 є інтеграція з WebDriver API. WebDriver призначений для забезпечення більш простого і лаконічного інтерфейсу програмування в додаток до рішення деяких обмежень у API Selenium-RC. Selenium-WebDriver був розроблений, щоб краще підтримувати динамічні веб-сторінки, де елементи сторінки можуть бути змінені без перезавантаження сторінки. Selenium-WebDriver робить прямі виклики до браузера, використовуючи вбудовану підтримку кожного браузера для автоматизації.

Налаштування Selenium-WebDriver
Щоб встановити Selenium потрібно створити проект, так що ви можете написати програму, використовуючи Selenium. Як це зробити, залежить від мови програмування і середовища розробки.


Java
Найпростіший спосіб створити Java проект з Selenium 2.0 є використання Maven. Maven буде завантажувати Java прив’язки (клієнтська бібліотека Selenium), і всі його залежності, і створить для Вас проект, використовуючи файл Maven pom.xml (конфігураційний файл проекту). Після того як ви зробили це, ви можете імпортувати проект Maven в потрібну IDE – IntelliJ IDEA або Eclipse. По-перше, створити папку для зберігання файлів проекту Selenium. Потім, щоб використовувати Maven, Вам потрібний файл pom.xml. Він може бути створений за допомогою текстового редактора. Ми не будемо вчити деталі файлів pom.xml або для використання Maven, так як є вже відмінні рекомендації на цей рахунок. Ваш pom.xml файл буде виглядати приблизно так. Збережіть цей файл в папку, створену для вашого проекту.

Переконайтеся, що ви вказати останню версію. У момент написання версія, що наведена вище, була останньою, проте були часті релізи відразу після виходу Selenium 2.0. Перевірте сторінку завантаження Maven для поточної версії і відредагуйте вище зазначену залежність відповідно.

Тепер з командного рядка, перейдіть в папку проекту і запустіть Maven наступним чином.
mvn clean install

Це скачає Selenium і всі його залежності і додасть їх у проект. Нарешті, імпортуйте проект в будь-яке середовище розробки.


C#

Як і Selenium 2.2.0, в С# прив’язки поширюються у вигляді набору бібліотек DLL поряд з іншими DLL-залежностями. До 2.2.0, всі Selenium бібліотек були без підпису. Щоб включити Selenium у вашому проекті, просто завантажте останню версію Selenium Dotnet з архіву. Якщо ви використовуєте Windows Vista або вище, ви повинні розблокувати файл перед його розпакуванням: Клацніть правою кнопкою миші на ZIP файлі, натисніть кнопку “Властивості”, натисніть “Розблокувати” і натисніть “OK”.

Розпакуйте вміст архіву і додайте посилання на кожну з розпакованих бібліотек DLL в ваш проект в Visual Studio (або вашої IDE вибору).


Python

Якщо ви використовуєте Python для автоматизації тестування, то ви, мабуть, вже знайомі з розробкою в Python. Щоб додати Selenium в середовище Python виконайте наступну команду з командного рядка.
pip install selenium


Ruby
Щоб додати Selenium в середовище Ruby, виконайте наступну команду з командного рядка.
gem install selenium-webdriver


Приклад роботи Selenium-WebDriver API

WebDriver це інструмент для автоматизації тестування веб-додатків і, зокрема, щоб переконатися, що вони працюють, як і очікувалося. Його метою є надання API, який легко вивчити і зрозуміти, простіше у використанні, ніж Selenium-RC (1,0) API, які допоможуть зробити ваші тести легшими. Це не пов’язано з будь-якою конкретною структурою тесту, так що він може бути використаний в рівній мірі в модульному тестуванні або з методом основного тестування. Почніть з створення проекту WebDriver, якщо ви ще цього не зробили.
Після того, як ваш проект буде створений, ви можете побачити, що WebDriver діє так само, як будь-яка інша бібліотека.

Тепер ви готові написати код. Найпростіший спосіб, щоб почати це приклад, який шукає слово “cheese” в пошуковій системі Google і потім виводяться назви сторінок результатів на консоль.


У наступних розділах ви дізнаєтеся більше про те, як використовувати WebDriver для таких речей, як навігація вперед і назад в історії вашого браузера, і як перевірити веб-сайти, які використовують фрейми (кадри) і вікна.