如何在 Selenium 中显示下拉菜单中的所有项目?
seleniumautomation testingtesting tools
我们可以使用 Selenium WebDriver 的 Select 类在下拉菜单中显示列表中的所有项目。下拉菜单由 select 标签表示,其选项由 option 标签表示。
要获取所有项目列表,我们必须使用 getOptions 方法。它的返回类型是列表。然后,我们必须遍历此列表并借助 getText 方法获取它。
让我们查看下拉菜单及其选项的 HTML 代码——请选择一个选项,选项 1 和选项 2。

语法
WebElement d = driver.findElement(By.tagName("select"));
Select l = new Select(d);
List<WebElement> m = l.getOptions();
示例
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import java.util.concurrent.TimeUnit;
import java.util.List;
import org.openqa.selenium.support.ui.Select
public class DrpdwnLst{
public static void main(String[] args) {
System.setProperty("webdriver.gecko.driver",
"C:\Users\ghs6kor\Desktop\Java\geckodriver.exe");
WebDriver driver = new FirefoxDriver();
//隐式等待
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
//URL 启动
driver.get("https://the-internet.herokuapp.com/dropdown");
// 识别下拉菜单
WebElement d = driver.findElement(By.tagName("select"));
// 选择类以获取下拉菜单中的选项
Select l = new Select(d);
List<WebElement> m = l.getOptions();
System.out.println("下拉列表项为: ");
//遍历选项直到列表大小
for (int j = 0; j < m.size(); j++) {
String s = m.get(j).getText();
System.out.println(s);
}
driver.quit();}
}
}
输出


