Бажані можливості в Selenium WebDriver

Зміст:

Anonim

Бажані можливості

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

  • Бажану можливість також можна використовувати для налаштування екземпляра драйвера Selenium WebDriver.
  • Ми можемо налаштувати екземпляр драйверів, таких як FirefoxDriver, ChromeDriver, InternetExplorerDriver, використовуючи бажані можливості.

У цьому підручнику ви дізнаєтесь-

  • Що таке бажана можливість?
  • Навіщо нам потрібні бажані можливості?
  • Різні типи методів бажаних можливостей
  • Приклад для методу встановлення можливостей

Навіщо нам потрібні бажані можливості?

Потрібні можливості потрібні, оскільки кожен сценарій тестування повинен виконуватися в якомусь конкретному середовищі тестування. Тестовим середовищем може бути веб-браузер, мобільний пристрій, мобільний емулятор, мобільний симулятор тощо. Клас бажаних можливостей допомагає нам повідомити веб-драйверу, яке середовище ми будемо використовувати в нашому тестовому сценарії.

Метод setCapability з класу DesiredCapabilities, що пояснюється в пізнішій частині керівництва, може бути використаний в Selenium Grid. Він використовується для паралельного виконання на різних конфігураціях машини.

Приклад: Сітка

Він використовується для встановлення властивостей браузера (наприклад, Chrome, IE), імені платформи (наприклад, Linux, Windows), які використовуються під час виконання тестових випадків.

У випадку автоматизації мобільних пристроїв, оскільки ми проводимо тести на різних різновидах мобільних пристроїв, можна встановити версію платформи Mobile Platform (наприклад, iOS, Android) (Ex. 3.x, 4.x в Android).

Наведений вище приклад емулятора показує набір платформ, який є андроїдом, і набір версій платформи, який є IceCream Sandwich (4.x).

Бажані можливості є більш корисними у таких випадках, як:

  • В автоматизації мобільних додатків, де можна встановити властивості браузера та властивості пристрою.
  • У сітці Selenium, коли ми хочемо запускати тестові кейси в іншому браузері з різними операційними системами та версіями.

Різні типи методів бажаних можливостей

Тут ми побачимо інший тип бажаних методів можливостей і побачимо, як використовувати один із цього методу " setCapability Method".

  1. getBrowserName ()
public java.lang.String getBrowserName ()
  1. setBrowserName ()
public void setBrowserName (java.lang.String browserName)
  1. getVersion ()
public java.lang.String getVersion ()
  1. setVersion ()
public void setVersion (версія java.lang.String)
  1. getPlatform ()
публічна платформа getPlatform ()
  1. setPlatform ()
відкрита платформа setPlatform ()
  1. Метод getCapability

Метод getCapability класу DesiredCapabilities може бути використаний для отримання можливостей, які зараз використовуються в системі.

public java.lang.Object getCapability (java.lang.String capabilityName)
  1. метод setCapability ()

Метод setCapability () класу бажаних можливостей використовується для встановлення властивості тестового середовища, як-от назва пристрою, назва та версія ОС, назва та версія браузера, абсолютний шлях до програми, що тестується (файл .apk програми для Android під тестом), додаток Activity (в Android) та appPackage (у Java).

"Метод setCapability" у Java має такі оголошення:

setCapability: public void setCapability (java.lang.String capabilityName, логічне значення)
setCapability: public void setCapability (java.lang.String capabilityName, java.lang.String значення)
setCapability: public void setCapability (java.lang.String capabilityName, значення платформи)
setCapability: public void setCapability (java.lang.String key, java.lang.Object value)

Приклад для методу встановлення можливостей

Давайте розглянемо приклад, коли ми хочемо запустити наш тест на браузері Internet Explorer, щоб відкрити веб-сайт www.gmail.com за допомогою Selenium Webdriver.

Далі йде код.

імпорт org.openqa.selenium.WebDriver;імпорт org.openqa.selenium.ie.InternetExplorerDriver;публічний клас IEtestforDesiredCapabilities {public static void main (String [] args) {Драйвер WebDriver = новий InternetExplorerDriver ();driver.manage (). window (). maximize ();driver.get ("http://gmail.com");driver.quit ();}}

Тепер запустіть цей код з Eclipse і перевірте консоль.

Вихід:

При виконанні вищезазначеного коду він видасть наступну помилку. Помилка виникає через те, що шлях до драйвера браузера (IE у наведеному вище випадку) не встановлений. Браузер не міг знайти код селену.

Шлях до виконуваного файлу драйвера повинен бути встановлений системною властивістю webdriver.ie.driver; для отримання додаткової інформації див. http://code.google.com/p/selenium/wiki/InternetExplorerDriver. Останню версію можна завантажити з http://code.google.com/p/selenium/downloads/list

11 грудня 201212: 59: 43PG org.openqa.selenium.ie.InternetExplorerDriverServer initializeLib

ПОПЕРЕДЖЕННЯ: Цей спосіб запуску драйвера IE застарілий і буде вилучений у селені 2.26. Завантажте файл IEDriverServer.exe з http://code.google.com/p/selenium/downloads/list і переконайтеся, що він є у вашому PATH.

Рішення :

Рішення вищезазначеної проблеми наведено у розділі попередження про саму помилку.

  • Завантажте автономний сервер Internet ExplorerDriver на 32 або 64 біти.
  • Збережіть драйвер у відповідному місці в системі.
  • Встановіть шлях для драйвера, використовуючи метод System.setProperty .
  • Він використовується для встановлення драйвера IE із властивістю webdriver. Це допомагає знайти виконуваний файл драйвера, який зберігається в системі. (Наприклад: "C: \ IEDriverLocation \ IEDriver.exe")
імпорт org.openqa.selenium.WebDriver;імпорт org.openqa.selenium.ie.InternetExplorerDriver;імпорт org.openqa.selenium.remote.DesiredCapabilities;публічний клас IEtestforDesiredCapabilities {public static void main (String [] args) {// він використовується для визначення можливостей IEDesiredCapabilities можливостей = DesiredCapabilities.internetExplorer ();възможности.setCapability (CapabilityType.BROWSER_NAME, "IE");functions.setCapability (InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, правда);System.setProperty ("webdriver.ie.driver", "C: \\ IEDriverServer.exe");// він використовується для ініціалізації драйвера IEДрайвер WebDriver = новий InternetExplorerDriver (можливості);driver.manage (). window (). maximize ();driver.get ("http://gmail.com");driver.quit ();}}

Пояснення коду:

У наведеному вище коді

  • Оператори імпорту мають імпортувати необхідні пакети для веб-драйвера селену, необхідні пакети для драйвера Internet Explorer, пакети для бажаних можливостей.
  • setCapability приймає різні можливості як вхідні змінні, які потім використовуються веб-драйвером для запуску програми у бажаному середовищі.
  • setProperty використовується для встановлення шляху, де знаходиться драйвер. Потім веб-драйвер знаходить необхідний драйвер.
  • Веб-сайт Gmail відкривається у браузері Internet Explorer методом "отримати".

Вихід:

Тестовий приклад браузера Internet Explorer буде успішно запущений за допомогою Selenium Webdriver.

Висновок

Клас бажаних можливостей допоможе встановити середовище для визначення поведінки браузера / середовища, на якому може бути виконаний тест.

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

Цю статтю внесено Крітікою Рамкумаром