Как выбрать значение из раскрывающегося списка Selenium
Как выбрать раскрывающийся список в Selenium
Ниже приведен пошаговый процесс выбора значения из раскрывающегося списка. Selenium:
Прежде чем обрабатывать раскрывающийся список в Selenium и управления раскрывающимися списками, мы должны сделать следующие две вещи:
- Импорт пакета org.openqa.selenium.support.ui.Выбрать
- Создайте экземпляр раскрывающегося списка как объекта, выберите в Selenium Вебдрайвер
В качестве примера перейдите к Mercury Страница регистрации туров (https://demo.guru99.com/test/newtours/register.php) и обратите внимание на раскрывающийся список «Страна».
Шаг 1) Импортируйте пакет «Выбрать».
import org.openqa.selenium.support.ui.Select;
Шаг 2) Объявите раскрывающийся элемент как экземпляр класса Select..
В приведенном ниже примере мы назвали этот экземпляр «drpCountry».
Select drpCountry = new Select(driver.findElement(By.name("country")));
Шаг 3) Начните контролировать это.
Теперь мы можем начать управлять «drpCountry», используя любой из доступных методов Select для выбора раскрывающегося списка в Selenium. В приведенном ниже примере кода будет выбран вариант «АНТАРКТИДА».
drpCountry.selectByVisibleText("ANTARCTICA");
Выберите класс в Selenium
Территория Выберите класс в Selenium — это метод, используемый для реализации тега HTML SELECT. Тег html select предоставляет вспомогательные методы для выбора и отмены выбора элементов. Класс Select является обычным классом, поэтому для создания его объекта используется ключевое слово New, которое определяет местоположение веб-элемента.
Выберите методы в Selenium
Ниже приведены наиболее распространенные методы, используемые Selenium выпадающий список.
#1) выберитеByVisibleText() и отмените выборByVisibleText()
- Выбирает/отменяет выбор опции, отображающей текст, соответствующий параметру.
- Параметр: Точно отображаемый текст конкретной опции
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
drpCountry.selectByVisibleText("ANTARCTICA");
#2) selectByValue() и deselectByValue()
- Выбирает/отменяет выбор опции, атрибут «значение» которой соответствует указанному параметру.
- Помните, что не все параметры раскрывающегося списка имеют одинаковый текст и «значение», как в примере ниже.
- Параметр: значение атрибута «value»
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
drpCountry.selectByValue("234");
#3) selectByIndex() и deselectByIndex()
- Выбирает/отменяет выбор опции по данному индексу.
- Параметр: индекс опции, которую нужно выбрать.
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
drpCountry.selectByIndex(0);
#4) isMultiple()
- Возвращает TRUE, если элемент раскрывающегося списка позволяет выбрать несколько вариантов одновременно; ЛОЖЬ, если иначе.
- Параметр: Не нужно
Пример
if (drpCountry.isMultiple()) { //do something here }
#5) отменить выбор Все()
- Очищает все выбранные записи. Это допустимо только в том случае, если элемент раскрывающегося списка поддерживает множественный выбор.
- Параметр: Не нужно
Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.
drpCountry.deselectAll();
Полный код избранных методов в Selenium
package 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"); String baseURL = "https://demo.guru99.com/test/newtours/register.php"; WebDriver driver = new FirefoxDriver(); driver.get(baseURL); Select drpCountry = new Select(driver.findElement(By.name("country"))); drpCountry.selectByVisibleText("ANTARCTICA"); //Selecting Items in a Multiple SELECT elements driver.get("http://jsbin.com/osebed/2"); Select fruits = new Select(driver.findElement(By.id("fruits"))); fruits.selectByVisibleText("Banana"); fruits.selectByIndex(1); } }
Выбор элементов в нескольких элементах SELECT
Мы также можем использовать выберитеПоВизиблетекст() метод выбора нескольких опций в элементе multi SELECT. В качестве примера мы возьмем https://jsbin.com/osebed/2 как базовый URL. Он содержит раскрывающийся список, который позволяет выбирать несколько вариантов одновременно.
Код ниже выберет первые два параметра с помощью метода selectByVisibleText().
Резюме
Command | Описание |
---|---|
выберитеБыВисиблетекст()/
отменить выбор поVisibleText() |
выбирает/отменяет выбор опции по отображаемому тексту |
выберитеПоЗначению()/
отменить выбор по значению () |
выбирает/отменяет выбор опции по значению ее атрибута «value» |
выбратьПоИндексу()/
отменить выбор по индексу () |
выбирает/отменяет выбор опции по ее индексу |
isMultiple() | возвращает TRUE, если элемент раскрывающегося списка допускает множественный выбор одновременно; ЛОЖЬ, если иначе |
убрать выделение со всего() | отменяет выбор всех ранее выбранных опций |
Для управления раскрывающимися списками необходимо сначала импортировать пакет org.openqa.selenium.support.ui.Select, а затем создать экземпляр Select.