Радиокнопка - это элемент input с типом radio , с которым легко взаимодействовать.Для этого вы можете использовать id radio-1
.
. Если вы хотите найти переключатель по тексту метки, например, «Нью-Йорк», вы можете использовать xpath ниже:
//label[normalize-space(.)='New York']/following-sibling::input[@type='radio'][1]
Код будетбыть:
WebElement radioButton = driver.findElement(By.xpath("//label[normalize-space(.)='New York']/following-sibling::input[@type='radio'][1]");
boolean isDisplayed = radioButton.isDisplayed();
System.out.println(isDisplayed);
boolean isEnabled = radioButton.isEnabled();
System.out.println(isEnabled);
boolean isSelected = radioButton.isSelected();
System.out.println(isSelected);
Вы также можете использовать элемент label
для выбора с помощью //label[normalize-space(.)='New York']
, но isSelected()
не будет работать, и вам придется проверить наличие класса ui-state-active
css:
// Using label
WebElement radioButton = driver.findElement(By.xpath("//label[normalize-space(.)='New York']"));
// Select radio by clicking on label
radioButton.click();
// Check if radio selected by css class of the label
boolean selected = radioButton.getAttribute("class").contains("ui-state-active");