Желаемые возможности в Selenium WebDriver

Содержание:

Anonim

Желаемые возможности

Desired Capabilities - это класс в Selenium, используемый для установки свойств браузеров для выполнения кроссбраузерного тестирования веб-приложений. Он хранит возможности в виде пар ключ-значение, и эти возможности используются для установки свойств браузера, таких как имя браузера, версия браузера, путь к драйверу браузера в системе и т. Д., Чтобы определить поведение браузера во время выполнения.

  • Желаемые возможности также можно использовать для настройки экземпляра драйвера Selenium WebDriver.
  • Мы можем настроить экземпляр драйвера, например FirefoxDriver, ChromeDriver, InternetExplorerDriver, используя желаемые возможности.

В этом руководстве вы узнаете:

  • Что такое желаемые возможности?
  • Зачем нам нужны желаемые возможности?
  • Различные типы методов желаемых возможностей
  • Пример метода задания возможностей

Зачем нам нужны желаемые возможности?

Желаемые возможности необходимы, потому что каждый сценарий тестирования должен выполняться в определенной среде тестирования. Средой тестирования может быть веб-браузер, мобильное устройство, мобильный эмулятор, мобильный симулятор и т. Д. Класс желаемых возможностей помогает нам сообщить веб-драйверу, какую среду мы собираемся использовать в нашем тестовом скрипте.

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

Пример: сетка

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

В случае мобильной автоматизации, поскольку мы проводим тесты на различных типах мобильных устройств, можно установить версию платформы мобильной платформы (например, iOS, Android) (например, 3.x, 4.x в Android).

В приведенном выше примере эмулятора показан набор платформ - android и набор версий платформы - IceCream Sandwich (4.x).

Желаемые возможности более полезны в таких случаях, как:

  • В автоматизации мобильных приложений, где можно настроить свойства браузера и свойства устройства.
  • В сетке Selenium, когда мы хотим запустить тестовые примеры в другом браузере с разными операционными системами и версиями.

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

Здесь мы увидим другой тип методов желаемых возможностей и увидим, как использовать один из этих методов " setCapability Method".

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

Метод getCapability класса DesiredCapabilities может использоваться для получения возможности, которая используется в настоящее время в системе.

общедоступный java.lang.Object getCapability (java.lang.String possibleName)
  1. setCapability () Метод

Метод setCapability () класса Desired Capabilities используется для установки свойства тестовой среды, например имени устройства, имени и версии ОС, имени и версии браузера, абсолютного пути к тестируемому приложению (файл .apk приложения Android в процессе тестирования), app Activity (в Android) и appPackage (в Java).

«Метод setCapability» в Java имеет следующие объявления:

setCapability: public void setCapability (java.lang.String capacityName, логическое значение)
setCapability: public void setCapability (имя возможности java.lang.String, значение java.lang.String)
setCapability: public void setCapability (имя возможности java.lang.String, значение платформы)
setCapability: public void setCapability (ключ java.lang.String, значение java.lang.Object)

Пример метода задания возможностей

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

Ниже приведен код.

import org.openqa.selenium.WebDriver;import 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 декабря 2012 г., 12:59:43 org.openqa.selenium.ie.InternetExplorerDriverServer initializeLib

ВНИМАНИЕ: этот метод запуска драйвера IE устарел и будет удален в selenium 2.26. Загрузите IEDriverServer.exe из http://code.google.com/p/selenium/downloads/list и убедитесь, что он находится в вашем пути.

Решение :

Решение вышеуказанной проблемы приведено в разделе предупреждений самой ошибки.

  • Загрузите автономный сервер Internet ExplorerDriver для 32- или 64-разрядной версии.
  • Сохраните драйвер в подходящем месте в системе.
  • Задайте путь к драйверу с помощью метода System.setProperty .
  • Он используется для установки драйвера IE со свойством webdriver. Это помогает найти исполняемый файл драйвера, который хранится в системной папке. (Пример: «C: \ IEDriverLocation \ IEDriver.exe»)
import org.openqa.selenium.WebDriver;import org.openqa.selenium.ie.InternetExplorerDriver;import org.openqa.selenium.remote.DesiredCapabilities;открытый класс IEtestforDesiredCapabilities {public static void main (String [] args) {// он используется для определения возможностей IEВозможности DesiredCapabilities = DesiredCapabilities.internetExplorer ();возможности.setCapability (CapabilityType.BROWSER_NAME, "IE");возможности.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 ();}}

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

В приведенном выше коде

  • Операторы импорта предназначены для импорта необходимых пакетов для веб-драйвера selenium, необходимых пакетов для драйвера Internet Explorer, пакетов для желаемых возможностей.
  • setCapability принимает различные возможности в качестве входных переменных, которые затем используются веб-драйвером для запуска приложения в желаемой среде.
  • setProperty используется для установки пути, по которому находится драйвер. Затем веб-драйвер находит требуемый драйвер.
  • Веб-сайт Gmail открывается в браузере Internet Explorer с помощью метода get.

Выход:

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

Вывод

Класс Desired Capabilities поможет настроить среду для определения поведения браузера / среды, в которой может быть выполнен тест.

Это помогает запустить наше приложение в желаемой среде, имея возможности, которые мы желаем использовать.

Эта статья предоставлена ​​Критикой Рамкумаром.