如何使用带有java的Selenium WebDriver从下拉列表中选择一个项目?

如何使用Selenium WebDriver和Java从下拉列表中选择一个项目,例如性别(例如男性,女性)?

我试过这个

WebElement select = driver.findElement(By.id("gender"));
List<WebElement> options = select.findElements(By.tagName("Male"));
for (WebElement option : options) {
    if("Germany".equals(option.getText()))
        option.click();   
}

我的上述代码不起作用。


答案 1

用途 -

new Select(driver.findElement(By.id("gender"))).selectByVisibleText("Germany");

当然,您需要import org.openqa.selenium.support.ui.Select;


答案 2

只需将 WebElement 包装到“选择对象”中,如下所示

Select dropdown = new Select(driver.findElement(By.id("identifier")));

完成此操作后,您可以通过3种方式选择所需的值。考虑一个像这样的 HTML 文件

<html>
<body>
<select id = "designation">
<option value = "MD">MD</option>
<option value = "prog"> Programmer </option>
<option value = "CEO"> CEO </option>
</option>
</select>
<body>
</html>

现在要识别下拉列表

Select dropdown = new Select(driver.findElement(By.id("designation")));

要选择其选项,请说“程序员”,您可以做

dropdown.selectByVisibleText("Programmer ");

dropdown.selectByIndex(1);

dropdown.selectByValue("prog");

快乐的编码:)


推荐