java - 如何使用 Selenium 在下拉列表中选择值?

标签 java selenium selenium-webdriver selenium-rc testng

我正在使用 selenium、TestNG 和 java 以及 eclipse 来执行自动化测试。我在单击按钮(selenium.click(“按钮”)、将值传递给文本框(selenium.type(“组件”,“值”))和单击等命令方面取得了成功,但是当它带有组件类型下拉列表(与常见或asp.net MVC相关)我无法使用命令selenium.select(“field”,“value”)选择字段。

要选择值甚至字段,我使用 XPath 来进行选择,但即使如此,使用下拉列表也不能,或者部分可以。

当下拉列表接受我输入的值时,我可以使用 selenium.click,但如果没有,到目前为止我尝试过的任何方法都不起作用。

最佳答案

使用 webdriver,您可以使用 Select 类来完成此操作,我已经发布了一个可以在下面运行的代码 看一下,Select Class 有 api 通过其索引和值选择下拉值,请查看 Select api 以获取更多信息

   public static void dropdown() 
    {
    WebDriver driver = new FirefoxDriver();
    driver.get("http://demosthenes.info/blog/166/HTML-Forms-Drop-down-Menus");
    Select sele = new Select(driver.findElement(By.id("state")));
    sele.selectByIndex(1);
    }

关于java - 如何使用 Selenium 在下拉列表中选择值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17512702/

相关文章:

java - 将 appcompat-v7 和设计库更新到 v24.2.0 会导致错误

java - Jersey 中的 Moxy JAXB json 映射返回 415

java - 具有优先级的测试用例执行的 TestNG 顺序

python - 从 Selenium for Python 中具有相同类的多个元素获取文本?

python - Selenium 网络驱动程序 : form data not present after submit

java-session.getattribute 返回 null

java - 根据另一个类中可用的参数对列表进行排序

python - 即使我正在迭代行, Selenium 也会选择表中的第一行

java - 如何使用 selenium-java 单击 href 链接

javascript - 无法使用 Selenium JavaScript 单击按钮