Какое использование DesiredCapabilities в Selenium WebDriver?
Когда мы хотим использовать это и как?
Ответ на пример будет оценен.
Какое использование DesiredCapabilities в Selenium WebDriver?
Когда мы хотим использовать это и как?
Ответ на пример будет оценен.
Вы должны прочитать документацию DesiredCapabilities. Существует также другая страница для ChromeDriver. Javadoc от Capabilities
:
Возможности: Описывает серию пар ключ/значение, которые инкапсулируют аспекты браузера.
В принципе, DesiredCapabilities
помогает установить свойства для WebDriver. Типичным методом usecase было бы установить путь для FirefoxDriver
, если ваша локальная установка не соответствует настройкам по умолчанию.
org.openqa.selenium.remote.DesiredCapabilities
.Пример:
WebDriver driver;
String baseUrl , nodeUrl;
baseUrl = "https://www.facebook.com";
nodeUrl = "http://192.168.10.21:5568/wd/hub";
DesiredCapabilities capability = DesiredCapabilities.firefox();
capability.setBrowserName("firefox");
capability.setPlatform(Platform.WIN8_1);
driver = new RemoteWebDriver(new URL(nodeUrl),capability);
driver.manage().window().maximize();
driver.manage().timeouts().implicitlyWait(2, TimeUnit.MINUTES);
Я знаю, что очень поздно ответить на этот вопрос.
Но хотел бы добавить для дальнейших ссылок на ответы.
DesiredCapabilities
используются как настройка вашей конфигурации с помощью пары ключ-значение.
Ниже приведен пример, связанный с Appium
, используемый для автоматизации мобильных платформ, таких как Android
и IOS
.
Поэтому мы обычно устанавливаем DesiredCapabilities
для передачи нашего WebDriver
для конкретных вещей, которые нам потребуются для запуска нашего теста, чтобы сузить производительность и повысить точность.
Итак, мы устанавливаем наши DesiredCapabilities как:
// Created object of DesiredCapabilities class.
DesiredCapabilities capabilities = new DesiredCapabilities();
// Set android deviceName desired capability. Set your device name.
capabilities.setCapability("deviceName", "your Device Name");
// Set BROWSER_NAME desired capability.
capabilities.setCapability(CapabilityType.BROWSER_NAME, "Chrome");
// Set android VERSION desired capability. Set your mobile device OS version.
capabilities.setCapability(CapabilityType.VERSION, "5.1");
// Set android platformName desired capability. It Android in our case here.
capabilities.setCapability("platformName", "Android");
// Set android appPackage desired capability.
//Вам нужно проверить ваше имя приложения appPackage для своего приложения, вы можете использовать это приложение для этого APK INFO
// Set your application appPackage if you are using any other app.
capabilities.setCapability("appPackage", "com.android.appPackageName");
// Set android appActivity desired capability. You can use the same app for finding appActivity of your app
capabilities.setCapability("appActivity", "com.android.calculator2.Calculator");
Этот DesiredCapabilities
очень специфичен для Appium
на платформе Android
.
Для получения дополнительной информации вы можете обратиться к официальному сайту Selenium классу желаемых возможностей
Желаемая возможность - это серия пар ключ/значение, в которой хранятся свойства браузера, такие как имя пользователя, версия браузера, путь к драйверу браузера в системе и т.д., чтобы определить поведение браузера во время выполнения.
Желаемая возможность также может быть использована для настройки экземпляра драйвера Selenium WebDriver. Мы можем настроить экземпляр драйвера, например FirefoxDriver, ChromeDriver, InternetExplorerDriver, используя нужные возможности. Желаемые возможности более полезны в таких случаях, как:
В автоматизации мобильных приложений, где могут быть установлены свойства браузера и свойства устройства. В сетке Selenium, когда мы хотим запустить тестовые примеры в другом браузере с различными операционными системами и версиями.
DesiredCapabilities
- это параметры, которые можно использовать для настройки и настройки сеанса браузера.
Подробнее о них вы можете узнать здесь!
Желаемые возможности пригодится при выполнении удаленного или параллельного выполнения с использованием селеновой сетки. Мы будем параметризовать данные обозревателя и перейти на сервер selenium с помощью класса требуемых возможностей.
Другое использование - автоматизация тестирования с использованием Appium, как показано ниже.
// Created object of DesiredCapabilities class. DesiredCapabilities capabilities = new DesiredCapabilities(); // Set android deviceName desired capability. Set your device name. capabilities.setCapability("deviceName", "your Device Name"); // Set BROWSER_NAME desired capability. capabilities.setCapability(CapabilityType.BROWSER_NAME, "Chrome"); // Set android VERSION desired capability. Set your mobile device OS version. capabilities.setCapability(CapabilityType.VERSION, "5.1"); // Set android platformName desired capability. It Android in our case here. capabilities.setCapability("platformName", "Android");
Когда вы запускаете селен WebDriver, WebDriver открывает удаленный сервер на локальном компьютере вашего компьютера. Теперь этот сервер, называемый сервером селена, используется для интерпретации вашего кода в действиях для запуска или "диска" экземпляра реального браузера, известного как хром-браузер, т.е. Браузер, браузер ff и т.д. Таким образом, сервер селена может взаимодействовать с различными свойствами браузера и, следовательно, имеет множество "возможностей". Итак, какие возможности вы желаете? Рассмотрим сценарий, в котором вы проверяете правильность загрузки файлов в своем приложении, но, тем не менее, у вас нет средства автоматизации рабочего стола. Итак, в случае, когда вы нажимаете ссылку для загрузки, и появляется всплывающее окно рабочего стола, чтобы спросить, где сохранить и/или если вы хотите загрузить. Ваш следующий маршрут, чтобы обойти это, должен был подавить это всплывающее окно. Как? Возможности желания. И другие подобные примеры. Таким образом, Selenium Server может многое сделать, использовать желаемые возможности для адаптации к вашим потребностям.