无法使用selenium webdriver选择ajax下拉值

时间:2016-08-24 07:34:22

标签: javascript java selenium-webdriver

我正在尝试从2个Ajax下拉字段中选择一个特定值。第一个下拉选项列表已打开但没有选择选项,这就是为什么第二个下拉列表没有绑定并发生错误的原因如

  

org.openqa.selenium.NoSuchElementException:无法找到元素:   选项[值=" 111&#34]。

请帮助我..我是selenium的新人

这是我的代码..

Code

HTML Block:

HTML block

2 个答案:

答案 0 :(得分:3)

出现此问题是因为Firefox浏览器(版本45)兼容性问题。 我正在使用selenium 3.0.0-beta2并对Firefox 45.0.2进行测试

当尝试使用geckodriver(版本0.10.0)for OS windows 10 -64 bit时,似乎无法正常工作。 它仅适用于Firefox 48或更高版本。 它成功地研究了chromedriver

答案 1 :(得分:0)

您可以尝试更具体的方式与selenium中的下拉菜单进行交互。 尝试这样的事情:

Select dropdown = new Select(driver.findElement(By.id("cmbJob")));
dropdown.selectByValue("111");

您甚至可以定义一个使用dropdwns的函数:

protected void chooseOptionInSelectByValue(String selectId, String valueString) {
  Select dropdown = new Select(driver.findElement(By.id(selectId)));
  dropdown.selectByValue(valueString);
}

所以你可以使用像这样的功能

chooseOptionInSelectByValue("cmbJob","111");

Selenium下拉对象还有许多其他选项,例如selectByText等。请在API中查看它:https://seleniumhq.github.io/selenium/docs/api/java/org/openqa/selenium/support/ui/Select.html