Selenium WebDriver є найважливішим компонентом набору Selenium Tool. Остання версія «Selenium 2.0» інтегрована з API WebDriver, який забезпечує простіший і лаконічніший інтерфейс програмування.
як відключити режим розробника
Наступне зображення дасть вам чітке уявлення про компоненти Selenium та інструменти автоматизації тестування.
Selenium WebDriver був вперше представлений як частина Selenium v2.0. Початкова версія Selenium, тобто Selenium v1, складалася лише з IDE, RC і Grid. Однак із випуском Selenium v3 RC застарів і перенесено до застарілого пакета.
У WebDriver тестові сценарії можна розробляти за допомогою будь-якої з підтримуваних мов програмування та запускати безпосередньо в більшості сучасних веб-браузерів. Мови, які підтримує WebDriver, включають C#, Java, Perl, PHP, Python і Ruby.
Перш ніж вивчати концепції Selenium WebDriver, ви повинні добре знати будь-яку з підтримуваних мов програмування. Зараз веб-драйвер Selenium найбільш популярний у Java та C#. Для цього підручника ми використовуємо Selenium з java. Ви можете звернутися до наведених нижче посилань, щоб дізнатися про базові та поглиблені концепції Java та C#:
Підручник з Java: https://www.javatpoint.com/java-tutorial
Підручник C#: https://www.javatpoint.com/c-sharp-tutorial
Selenium WebDriver працює набагато швидше порівняно з Selenium RC, оскільки він здійснює прямі виклики до веб-браузерів. З іншого боку, RC потребує RC-сервера для взаємодії з браузером.
WebDriver має вбудовану реалізацію драйвера Firefox (драйвер Gecko). Для інших веб-переглядачів вам потрібно підключити їх драйвери для встановлення зв’язку та запуску тесту. Найбільш часто використовувані WebDriver включають:
- Драйвер Google Chrome
- Драйвер Internet Explorer
- Драйвер Opera
- Драйвер Safari
- Драйвер модуля HTML (спеціальний безголовий драйвер)
Selenium WebDriver - Архітектура
Selenium WebDriver API забезпечує зв’язок між мовами та браузерами.
На наступному зображенні показано архітектурне представлення Selenium WebDriver.
Існує чотири основні компоненти архітектури WebDriver:
- Прив’язки мови Selenium
- Провідний протокол JSON
- Драйвери браузера
- Справжні браузери
Прив’язки мови Selenium / Клієнтські бібліотеки Selenium
Розробники Selenium створили мовні прив’язки/клієнтські бібліотеки Selenium для підтримки кількох мов. Наприклад, якщо ви хочете використовувати драйвер браузера в java, використовуйте прив’язки java. Усі підтримувані мовні прив’язки можна завантажити з офіційного сайту (https://www.seleniumhq.org/download/#client-drivers) селену.
Провідний протокол JSON
JSON (JavaScript Object Notation) — це відкритий стандарт для обміну даними в Інтернеті. Він підтримує такі структури даних, як об’єкт і масив. Отже, записувати та читати дані з JSON легко. Щоб дізнатися більше про JSON, відвідайте https://www.javatpoint.com/json-tutorial
JSON Wire Protocol забезпечує транспортний механізм для передачі даних між сервером і клієнтом. JSON Wire Protocol є галузевим стандартом для різноманітних веб-служб REST. Щоб дізнатися більше про веб-послуги, відвідайте https://www.javatpoint.com/web-services-tutorial
Драйвери браузера
Selenium використовує драйвери, специфічні для кожного браузера, щоб встановити безпечне з’єднання з браузером, не відкриваючи внутрішню логіку функціональності браузера. Драйвер браузера також залежить від мови, яка використовується для автоматизації, наприклад Java, C# тощо.
Коли ми виконуємо тестовий сценарій за допомогою WebDriver, наступні операції виконуються внутрішньо.
- HTTP-запит генерується та надсилається драйверу браузера для кожної команди Selenium.
- Драйвер отримує HTTP-запит через HTTP-сервер.
- Сервер HTTP вирішує всі кроки для виконання інструкцій, які виконуються в браузері.
- Статус виконання надсилається назад на сервер HTTP, який згодом надсилається назад до сценарію автоматизації.
Браузери
Браузери, які підтримує Selenium WebDriver:
- Internet Explorer
- Mozilla Firefox
- Гугл хром
- Сафарі
Selenium WebDriver – функції
Деякі з найважливіших функцій Selenium WebDriver:
Драйвер WebDriver = новий FirefoxDriver(); (браузер Firefox)
Драйвер WebDriver = новий ChromeDriver(); (браузер Chrome)
Драйвер WebDriver = новий InternetExplorerDriver(); (браузер Internet Explorer)
WebDriver також дозволяє тестувальникам мати справу зі складними типами веб-елементів, таких як прапорці, спадні списки та сповіщення за допомогою динамічних засобів пошуку.
Selenium WebDriver Індекс посібника
Підручник Selenium WebDriver
- Підручник Selenium WebDriver
- WebDriver проти RC
- Встановлення WebDriver
- Перший тестовий приклад WebDriver
- Команди WebDriver
- Виконується тест у Chrome
- Запуск тесту на Firefox
- Запуск тесту в IE
- Запуск тесту в Safari
- Стратегії визначення місцезнаходження
- Пошук стратегій за ідентифікатором
- Пошук стратегій за назвою
- Розташування стратегій за назвою класу
- Пошук стратегій за назвою тегу
- Пошук стратегій за текстом посилання
- Пошук стратегій за частковим текстом посилання
- Пошук стратегій за CSS
- Пошук стратегій за допомогою XPath
- Обробка розкривних списків
- Перетягування WebDriver
- Сповіщення про обробку WebDriver
- Прокручування веб-сторінки
- WebDriver - команди браузера
- WebDriver - Команди навігації
- WebDriver - команди WebElement
- Обробка радіокнопок
- Прапорець обробки
- Твердження про селен
- Сітка селену