Желаемые возможности
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".
- getBrowserName ()
общедоступный java.lang.String getBrowserName ()
- setBrowserName ()
public void setBrowserName (java.lang.String browserName)
- getVersion ()
общедоступный java.lang.String getVersion ()
- setVersion ()
public void setVersion (версия java.lang.String)
- getPlatform ()
общедоступная платформа getPlatform ()
- setPlatform ()
общедоступная платформа setPlatform ()
- getCapability Метод
Метод getCapability класса DesiredCapabilities может использоваться для получения возможности, которая используется в настоящее время в системе.
общедоступный java.lang.Object getCapability (java.lang.String possibleName)
- 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 поможет настроить среду для определения поведения браузера / среды, в которой может быть выполнен тест.
Это помогает запустить наше приложение в желаемой среде, имея возможности, которые мы желаем использовать.
Эта статья предоставлена Критикой Рамкумаром.