Как выбрать значение из выпадающего списка с помощью Selenium Webdriver

Содержание:

Anonim

В этом руководстве мы узнаем, как обрабатывать DropDown в Selenium и операции множественного выбора.

Выберите класс в Selenium

Выберите класс в Селен является метод , используемый для реализации тега HTML SELECT. Тег select html предоставляет вспомогательные методы для выбора и отмены выбора элементов. Класс Select является обычным классом, поэтому для создания его объекта используется ключевое слово New, указывающее местоположение веб-элемента.

Выберите вариант из раскрывающегося списка

Ниже приведен пошаговый процесс выбора значения из раскрывающегося списка в Selenium:

Прежде чем обрабатывать раскрывающийся список в Selenium и управлять раскрывающимися списками, мы должны сделать следующие две вещи:

  1. Импортируйте пакет org.openqa.selenium.support.ui. Выберите
  2. Создайте раскрывающийся список как объект, выберите в Selenium WebDriver

В качестве примера перейдите на страницу регистрации Mercury Tours (http://demo.guru99.com/test/newtours/register.php) и обратите внимание на раскрывающийся список «Страна».

Шаг 1

Импортируйте пакет «Выбрать».

Шаг 2

Объявите раскрывающийся элемент как экземпляр класса Select. В приведенном ниже примере мы назвали этот экземпляр «drpCountry».

Шаг 3

Теперь мы можем начать управлять drpCountry, используя любой из доступных методов Select для выбора раскрывающегося списка в Selenium. В приведенном ниже примере кода будет выбран вариант «АНТАРКТИКА».

Выбор элементов в нескольких элементах SELECT

Мы также можем использовать метод selectByVisibleText () для выбора нескольких параметров в элементе multi SELECT. В качестве примера мы возьмем http://jsbin.com/osebed/2 в качестве базового URL. Он содержит раскрывающийся список, в котором можно выбрать несколько вариантов одновременно.

Приведенный ниже код выберет первые два параметра с помощью метода selectByVisibleText ().

Выберите методы

Ниже приведены наиболее распространенные методы, используемые в раскрывающемся списке Selenium.

Методика Описание
selectByVisibleText () и deselectByVisibleText ( ) Пример:
  • Выбирает / отменяет выбор опции, отображающей текст, соответствующий параметру.
  • Параметр : точно отображаемый текст определенной опции.
selectByValue () и deselectByValue ( ) Пример:
  • Выбирает / отменяет выбор опции, атрибут «value» которой соответствует указанному параметру.
  • Параметр : значение атрибута "значение"
  • Помните, что не все раскрывающиеся варианты имеют одинаковый текст и «значение», как в примере ниже.
selectByIndex () и deselectByIndex ( ) Пример:
  • Выбирает / отменяет выбор опции по данному индексу.
  • Параметр : индекс выбираемой опции.
isMultiple () Пример:
  • Возвращает ИСТИНА, если раскрывающийся элемент допускает одновременный выбор нескольких элементов; ЛОЖЬ, если иначе.
  • Параметры не нужны
deselectAll () Пример:
  • Удаляет все выбранные записи. Это действительно только тогда, когда раскрывающийся элемент поддерживает множественный выбор.
  • Параметры не нужны

Вот полный код

пакет newpackage;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.openqa.selenium.support.ui.Select;import org.openqa.selenium.By;public class accessDropDown {public static void main (String [] args) {System.setProperty ("webdriver.gecko.driver", "C: \\ geckodriver.exe");Строка baseURL = "http://demo.guru99.com/test/newtours/register.php";Драйвер WebDriver = новый FirefoxDriver ();driver.get (baseURL);Выберите drpCountry = new Select (driver.findElement (By.name ("country")));drpCountry.selectByVisibleText («АНТАРКТИКА»);// Выбор элементов в нескольких элементах SELECTdriver.get ("http://jsbin.com/osebed/2");Выбрать фрукты = новый Выбрать (driver.findElement (By.id ("fruit")));fruit.selectByVisibleText («Банан»);fruit.selectByIndex (1);}}

Резюме

Элемент Командование Описание
Выпадающий список selectByVisibleText () / deselectByVisibleText () выбирает / отменяет выбор параметра по отображаемому тексту
selectByValue () / deselectByValue () выбирает / отменяет выбор опции по значению ее атрибута "значение"
selectByIndex () / deselectByIndex () выбирает / отменяет выбор опции по ее индексу
isMultiple () возвращает ИСТИНА, если раскрывающийся элемент допускает множественный выбор одновременно; ЛОЖЬ, если иначе
убрать выделение со всего() отменяет выбор всех ранее выбранных опций

Для управления раскрывающимися списками необходимо сначала импортировать пакет org.openqa.selenium.support.ui.Select, а затем создать экземпляр Select.