如何在Selenium 2中选择/获取下拉选项

use*_*045 96 java selenium selenium-webdriver drop-down-menu

我正在将我的selenium 1代码转换为selenium 2,并且找不到任何简单的方法来在下拉菜单中选择标签或获取下拉列表的选定值.你知道如何在Selenium 2中做到这一点吗?

以下是两个在Selenium 1中有效但在2中不起作用的语句:

browser.select("//path_to_drop_down", "Value1");
browser.getSelectedValue("//path_to_drop_down");
Run Code Online (Sandbox Code Playgroud)

小智 184

查看有关使用selenium文档中的webdriver和Select类的javadoc 填写表单的部分.

要根据标签选择选项:

Select select = new Select(driver.findElement(By.xpath("//path_to_drop_down")));
select.deselectAll();
select.selectByVisibleText("Value1");
Run Code Online (Sandbox Code Playgroud)

要获得第一个选定值:

WebElement option = select.getFirstSelectedOption()
Run Code Online (Sandbox Code Playgroud)

  • 在C#中,使用SelectElement类,因此:`SelectElement salesExecutiveDropDown = new SelectElement(webDriver.FindElement(By.Id("salesExecutiveId")));` (4认同)
  • 如果select不支持多个选择,则deselectAll将抛出UnsupportedOperationException (2认同)

小智 5

driver.findElement(By.id("id_dropdown_menu")).click();
driver.findElement(By.xpath("xpath_from_seleniumIDE")).click();
Run Code Online (Sandbox Code Playgroud)

祝好运